Sign In to Follow Application
View All Documents & Correspondence

System And Method For Executing Operations Associated With Nodes In A Communication Network

Abstract: Disclosed is a system and a method for executing one or more operations associated with a plurality of nodes (120) in a communication network. The method (300) comprises receiving a first input corresponding to a selection of an operation from the one or more operations to be performed in the communication network, and a second input including a selection of a set of network attributes from a plurality of network attributes associated with the selected operation and a threshold value for each network attribute in the selected set of network attributes. A record of the first input and the second input in association with each other, is generated in a database (250). Upon determination that an execution module (244) is triggered for executing the selected operation, the first input and the second input are loaded in a memory (230) prior to execution of the selected operation and operation is executed. FIG. 3

Get Free WhatsApp Updates!
Notices, Deadlines & Correspondence

Patent Information

Application #
Filing Date
23 March 2024
Publication Number
39/2025
Publication Type
INA
Invention Field
COMMUNICATION
Status
Email
Parent Application

Applicants

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

Inventors

1. Bhatnagar, Pradeep Kumar
Reliance Corporate Park, Thane-Belapur Road, Ghansoli, Navi Mumbai, Maharashtra 400701, India.
2. Bhatnagar, Aayush
Reliance Corporate Park, Thane-Belapur Road, Ghansoli, Navi Mumbai, Maharashtra 400701, India.
3. V, Rajeshwari
Reliance Corporate Park, Thane-Belapur Road, Ghansoli, Navi Mumbai, Maharashtra 400701, India.
4. Kapadiya, Pratik
Reliance Corporate Park, Thane-Belapur Road, Ghansoli, Navi Mumbai, Maharashtra 400701, India.

Specification

DESC:FORM 2
THE PATENTS ACT, 1970 (39 OF 1970)
&
THE PATENT RULES, 2003
COMPLETE SPECIFICATION
(See section 10 and rule 13)

SYSTEM AND METHOD FOR EXECUTING OPERATIONS ASSOCIATED WITH NODES IN A COMMUNICATION NETWORK

Jio Platforms Limited, an Indian company, having registered address at 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.

TECHNICAL FIELD
[0001] The embodiments of the present disclosure generally relate to the field of wireless communication networks. More particularly, the present disclosure relates to a system and a method for executing operations associated with nodes in a communication network.
BACKGROUND OF THE INVENTION
[0002] The subject matter disclosed in the background section should not be assumed or construed to be prior art merely as a result of its mention in the background section. Similarly, any problem statement mentioned in the background section or its association with the subject matter of the background section should not be assumed or construed to have been previously recognized in the prior art.
[0003] With diverse and ever-increasing consumer demand for high-speed network connectivity, there has been an increasing demand of network resources by the telecom operators to meet the consumer’s needs, which puts a lot of pressure for efficient utilization of the network resources. Physical network infrastructure, such as transmission nodes, are being strategically deployed throughout a communication network. However, with expansion of the communication network, complexity of the communication network has also increased leading to increasing difficulty in development of source code for network operations as network parameters vary dynamically.
[0004] Moreover, since the status of the communication network varies dynamically due to factors including fluctuating user demands, environmental interference and evolving network topologies, various Key Performance Indicators (KPIs) and their threshold values are often required to be set or configured by administrators for executing a network operation. Such threshold values and KPIs may be applicable for a specific time-period and varies with a change in network operation to be executed. Due to variability in execution of the network operations, the administrators are required to frequently input the threshold values of the KPIs in accordance with a type of network operation to be executed or performed. However, this may be a cumbersome task for the administrator to iteratively input the KPIs and their threshold values each time for execution of the operation, especially when numerous KPIs are to be monitored.
[0005] Traditionally, network monitoring systems executing network operation(s), for example, identifying a fault in the communication network, are often pre-set and a program instruction is hardwired into monitoring apparatus by their manufacturers, vendors, or operators. In general, for executing such network operations, a fixed set of KPIs and threshold values associated with the fixed set of KPIs are hardcoded within the program itself. Thus, any change in the thresholds of the KPIs specific to user requirements involves development efforts as the thresholds of the KPIs are a part of the program code.
[0006] Therefore, there lies a need of a technical solution that can overcome the aforementioned limitations while executing one or more network operations in dynamic network conditions.
SUMMARY
[0007] The following embodiments present a simplified summary to provide a basic understanding of some aspects of the disclosed invention. This summary is not an extensive overview, and it is not intended to identify key/critical elements or to delineate the scope thereof. Its sole purpose is to present some concepts in a simplified form as a prelude to the more detailed description that is presented later.
[0008] The following embodiments present a simplified summary to provide a basic understanding of some aspects of the disclosed invention. This summary is not an extensive overview, and it is not intended to identify key/critical elements or to delineate the scope thereof. Its sole purpose is to present some concepts in a simplified form as a prelude to the more detailed description that is presented later.
[0009] In an embodiment, disclosed herein is a method for executing one or more operations associated with a plurality of nodes in a communication network. The method comprises receiving, by a reception module from a user device, a first input corresponding to a selection of an operation from the one or more operations to be performed in the communication network, and a second input including a selection of a set of network attributes from a plurality of network attributes associated with the selected operation and a threshold value for each network attribute in the selected set of network attributes. Further, the method comprises generating, by a database management module in a database, a record of the first input and the second input in association with each other. Furthermore, the method comprises determining, by a processing module, whether an execution module is triggered for executing the selected operation upon generation of the record in the database. Upon a determination that the execution module is triggered, the method comprises loading, by the processing module, the selected set of network attributes and the threshold value for each network attribute from the database into a memory prior to execution of the selected operation. Further, the method comprises executing, by the execution module, the selected operation using the selected set of network attributes and the threshold value for each network attribute loaded into the memory. Thereafter, the method comprises generating, by the processing module, an output based on the execution of the selected operation.
[0010] In one or more embodiments, the method further comprises fetching, by the processing module from the database, the plurality of network attributes associated with the selected operation and the threshold value corresponding to each network attribute based on the first input. Thereafter, the method comprises controlling, by the processing module, the user device to display the plurality of network attributes and the threshold value corresponding to each network attribute on a display interface, wherein the second input is received from the user device in response to the displayed plurality of network attributes and the threshold value corresponding to each network attribute.
[0011] In one or more embodiments, the method further comprises controlling, by the processing module, the user device to display a drop-down list of selectable options corresponding to the one or more operations for receiving the first input. Further, the method comprises fetching, by the processing module from the database, the plurality of network attributes associated with the selected operation and the threshold value corresponding to each network attribute based on a selection of the operation from the displayed drop-down list. Thereafter, the method comprises controlling, by the processing module, the user device to display, on the display interface, an operation settings panel including a list of the plurality of network attributes associated with the selected operation and one or more of an input field and a stepper field to modify the threshold value corresponding to each network attribute. The operation settings panel further includes one or more user configurable fields to input, delete, modify, and save the selected set of network attributes associated with the selected operation and the threshold value for each network attribute of the selected set of network attributes.
[0012] In one or more embodiments, the method further comprises receiving, by the reception module via the operation settings panel, a modified set of network attributes associated with the selected operation and a modified threshold value corresponding to each network attribute among the modified set of network attributes. The modified set of network attributes and the modified threshold value is received when an input operation is performed at the user device via the one or more user configurable fields. Thereafter, the method comprises updating, by the database management module in the database, the record associated with the selected operation with the modified set of network attributes and the modified threshold value corresponding to each network attribute.
[0013] In one or more embodiments, the record of the selected set of network attributes associated with the selected operation and the threshold value for each network attribute is generated and updated by the database management module via initiation of an Application Programming Interface (API) call request. The API call request corresponds to a Hyper Text Transfer Protocol (HTTP) request that transmits the selected set of network attributes and the threshold value for each network attribute from the operation settings panel to the database.
[0014] In one or more embodiments, the generation of the output by the processing module further comprises identifying a set of nodes among the plurality of nodes violating the threshold value based on the execution of the operation and performing one or more of controlling the user device to display, on the display interface, the identified set of nodes violating the threshold value or sending an alert corresponding to the identified set of nodes violating the threshold value.
[0015] In one or embodiments, the operation corresponds to monitoring one or more of Physical Resource Block (PRB) utilization of the plurality of nodes, spectral efficiency of the plurality of nodes, carrier load balancing of the plurality of nodes, Radio Resource Control (RRC) connection of the plurality of nodes, performance of the plurality of nodes in the communication network, Frequency Division Duplexing (FDD) to Time Division Duplexing (TDD) load balancing of the plurality of nodes, and dead nodes in the communication network.
[0016] In one or more embodiments, the plurality of network attributes corresponds to one or more of network parameters, Key Performance Indicators (KPIs), and KPIs associated with the network parameters. The plurality of network attributes include one or more of an average downlink Physical Resource Block (PRB) utilization, an average uplink PRB utilization, throughput, peak number of Radio Resource Control (RRC) connected users, traffic threshold, a percentage of call drops, a percentage of node accessibility, a percentage of node availability, a consistency period of the monitoring the plurality of nodes, a Block Error Rate (BLER), and an average Received Signal Strength Indicator (RSSI).
[0017] In one or more embodiments, the triggering of the execution module is initiated based on one of a user action, a scheduled task, or an event-driven process.
[0018] In another embodiment disclosed herein is a system for executing one or more operations associated with a plurality of nodes in a communication network. The system comprises a reception module, a database management module, and a processing module. The reception module is configured to receive from a user device, a first input corresponding to a selection of an operation from the one or more operations to be performed in the communication network, and a second input including a selection of a set of network attributes from a plurality of network attributes associated with the selected operation and a threshold value for each network attribute in the selected set of network attributes. The database management module is configured to generate, in a database, a record of the first input and the second input in association with each other. The processing module is configured to determine whether an execution module is triggered for executing the selected operation upon generation of the record in the database. Further, upon a determination that the execution module is triggered, the processing module is configured to load the selected set of network attributes and the threshold value for each network attribute from the database into a memory prior to execution of the selected operation. Furthermore, the execution module is configured to execute the operation using the selected set of network attributes and the threshold value for each network attribute loaded into the memory. Thereafter, the processing module is further configured to generate an output based on the execution of the selected operation.
[0019] In one or more embodiments, the processing module is further configured to fetch, from the database, the plurality of network attributes associated with the selected operation and the threshold value corresponding to each network attribute based on the first input. Thereafter, the processing module is configured to control the user device to display the plurality of network attributes and the threshold value corresponding to each network attribute on a display interface, wherein the second input is received from the user device in response to the displayed plurality of network attributes and the threshold value corresponding to each network attribute.
[0020] In one or more embodiments, the processing module is further configured to control the user device to display a drop-down list of selectable options corresponding to the one or more operations for receiving the first input. Furthermore, the processing module is configured to fetch, from the database, the plurality of network attributes associated with the selected operation and the threshold value corresponding to each network attribute based on a selection of the operation from the displayed drop-down list. Thereafter, the processing module is configured to control the user device to display, on the display interface, an operation settings panel including a list of the plurality of network attributes associated with the selected operation and one or more of an input field and a stepper field to modify the threshold value corresponding to each network attribute. The operation settings panel further includes one or more user configurable fields to input, delete, modify, and save the selected set of network attributes associated with the selected operation and the threshold value for each network attribute of the selected set of network attributes.
[0021] In one or more embodiments, the reception module is further configured to receive via the operation settings panel, a modified set of network attributes among the set of network attributes associated with the selected operation and a modified threshold value corresponding to each network attribute among the modified set of network attributes. The modified set of network attributes and the modified threshold value is received when an input operation is performed at the user device via the one or more user configurable fields. Thereafter, the database management module is configured to update in the database, the record associated with the selected operation with the modified set of network attributes and the modified threshold value corresponding to each network attribute.
[0022] In one or more embodiments, the record of the selected set of network attributes associated with the selected operation and the threshold value for each network attribute is generated and updated by the database management module via initiation of an Application Programming Interface (API) call request. The API call request corresponds to a Hyper Text Transfer Protocol (HTTP) request that transmits the selected set of network attributes and the threshold value for each network attribute from the operation settings panel to the database.
[0023] In one or more embodiments, to generate the output, the processing module is configured to identify a set of nodes among the plurality of nodes violating the threshold value based on the execution of the operation and perform one or more of control of the user device to display, on the display interface, the identified set of nodes violating the threshold value or send an alert corresponding to the identified set of nodes violating the threshold value.
BRIEF DESCRIPTION OF DRAWINGS
[0024] Various embodiments disclosed herein will become better understood from the following detailed description when read with the accompanying drawings. The accompanying drawings constitute a part of the present disclosure and illustrate certain non-limiting embodiments of inventive concepts disclosed herein. Further, components and elements shown in the drawings are not necessarily to scale, emphasis instead being placed upon clearly illustrating the principles of the present disclosure. For the purpose of consistency and ease of understanding, similar components and elements are annotated by reference numerals in the exemplary drawings.
[0025] FIG. 1 illustrates an exemplary environment of a system for executing one or more operations associated with nodes in a communication network, in accordance with an embodiment of the present disclosure.
[0026] FIG. 2 illustrates a block diagram depicting exemplary components of a server, in accordance with an embodiment of the present disclosure.
[0027] FIG. 3 illustrates a method for executing operations associated with the nodes in the communication network, in accordance with an embodiment of the present disclosure.
[0028] FIG. 4 illustrates a method for executing an example operation for generation of an alert associated with resource utilization in the communication network, in accordance with an embodiment of the present disclosure.
[0029] FIG. 5 illustrates a call flow diagram depicting information exchange between a User Interface and the server for executing the operations associated with the nodes in the communication network, in accordance with an embodiment of the present disclosure.
DETAILED DESCRIPTION OF THE INVENTION
[0030] Inventive concepts of the present disclosure will now be described more fully hereinafter with reference to the accompanying drawings, in which examples of one or more embodiments of inventive concepts are shown. Inventive concepts may, however, be embodied in different forms and should not be construed as limited to the embodiments set forth herein. Further, the one or more embodiments disclosed herein are provided to describe the inventive concept thoroughly and completely, and to fully convey the scope of each of the present inventive concepts to those skilled in the art. Furthermore, it should be noted that the embodiments disclosed herein are not mutually exclusive concepts. Accordingly, one or more components from one embodiment may be tacitly assumed to be present or used in any other embodiment.
[0031] The following description presents various embodiments of the present disclosure. The embodiments disclosed herein are presented as teaching examples and are not to be construed as limiting the scope of the present disclosure. The present disclosure should in no way be limited to the illustrative implementations, drawings, and techniques illustrated below, including the exemplary design and implementation illustrated and described herein, but may be modified, omitted, or expanded upon without departing from the scope of the present disclosure.
[0032] The following description contains specific information pertaining to embodiments in the present disclosure. The detailed description uses the phrases “in some embodiments” which may each refer to one or more or all of the same or different embodiments. The term “some” as used herein is defined as “one, or more than one, or all.” Accordingly, the terms “one,” “more than one,” “more than one, but not all” or “all” would all fall under the definition of “some.” In view of the same, the terms, for example, “in an embodiment” refers to one embodiment and the term, for example, “in one or more embodiments” refers to “at least one embodiment, or more than one embodiment, or all embodiments.”
[0033] The term “comprising,” when utilized, means “including, but not necessarily limited to;” it specifically indicates open-ended inclusion in the so-described one or more listed features, elements in a combination, unless otherwise stated with limiting language. Furthermore, to the extent that the terms “includes,” “has,” “have,” “contains,” and other similar words are used in either the detailed description or the claims, such terms are intended to be inclusive in a manner similar to the term “comprising.”
[0034] 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 can each be used independently of one another or with any combination of other features.
[0035] The description provided herein discloses exemplary embodiments only and is not intended to limit the scope, applicability, or configuration of the present disclosure. Rather, the foregoing description of the exemplary embodiments will provide those skilled in the art with an enabling description for implementing any of the exemplary embodiments. Specific details are given in the following description to provide a thorough understanding of the embodiments. However, it may be understood by one of the ordinary skilled in the art that the embodiments disclosed herein may be practiced without these specific details.
[0036] The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the disclosure. As used herein the description and in the appended claims, the singular forms "a", "an", and "the" include plural forms unless the context of the invention indicates otherwise.
[0037] The terminology and structure employed herein are for describing, teaching, and illuminating some embodiments and their specific features and elements and do not limit, restrict, or reduce the scope of the present disclosure and the appended claims. Accordingly, unless otherwise defined, all terms, and especially any technical and/or scientific terms, used herein may be taken to have the same meaning as commonly understood by one having ordinary skill in the art.
[0038] In the disclosure, various embodiments are described using terms used in communication standards (e.g., 3rd Generation Partnership Project (3GPP), Extensible Radio Access Network (xRAN), and Open-Radio Access Network (O-RAN)), but these are merely examples for description. Various embodiments of the disclosure may also be modified and applied to other communication systems.
[0039] In order to facilitate an understanding of the disclosed invention, a number of terms are defined below.
[0040] Received Signal Strength Indicator (RSSI) is a measurement of an average total received power observed by a User Equipment (UE) over a specific bandwidth. The measurement includes the power of a desired signal, interference, and noise. The RSSI is used as an indicator of signal strength in conjunction with performance metrics like Reference Signal Received Power (RSRP) and Reference Signal Receive Quality (RSRQ).
[0041] Radio Resource Control (RRC) is a protocol layer in a control plane of New Radio (NR) interface that manages a connection between a User Equipment (UE) and a cell in the communication network. The RRC operates in two main states i.e., an idle state (RRC_IDLE) and connected state (RRC_CONECTED) to manage network resources efficiently.
[0042] A Physical Resource Block (PRB) is a basic unit of radio resource in time-frequency domain in a communication network. The PRB signifies actual set of subcarriers and time slots that can be allocated for scheduling data transmission.
[0043] Block Error Rate (BLER) is a ratio of number of erroneous transport blocks to the total number of blocks transmitted over a certain number of frames in a communication network. The BLER is a physical-layer error estimation metric for measuring accuracy of data transmission and reception in the communication network.
[0044] Distributed microservices (interchangeably referred to as microservices) are independently deployable software in which complex applications are composed of small and independent processes. The distributed microservice may be developed as a suite of small services, each running in its own process and communicating with lightweight mechanisms such as Application Programming Interface(s) (API). Each microservice may adhere to a well-defined API.
[0045] Embodiments of the present disclosure will be described below in detail with reference to the accompanying drawings. FIG. 1 through FIG. 5 discussed below, and the one or more embodiments used to describe the principles of the present disclosure are by way of illustration only and should not be construed in any way to limit the scope of the present disclosure. Those skilled in the art will understand that the principles of the present disclosure may be implemented in any suitably arranged system or device.
[0046] An object of the present disclosure is to provide a dynamic system and a method for executing one or more operations associated with node(s) in a communication network. Another object of the present disclosure is to minimize efforts in development of a process code for executing the one or more operations in varying conditions of the communication network. Another object of the present disclosure is to reduce latency in execution of the operations. Still another object of the present disclosure is to ease customization of input of parameter(s) for execution of the operations associated with the node(s) in the communication network. Yet another object of the present disclosure is to simulate different pre-emptive scenarios for execution of the operations associated with the node(s) of the communication network.
[0047] According to an exemplary aspect of the present disclosure, various embodiments illustrate the system and the method for executing operations associated with the nodes in the communication network. Performance of the nodes varies during dynamic conditions prevailing in the network. Thus, the nodes require constant monitoring to ensure overall efficiency in the communication network. The disclosed system and the method provide a framework for executing and/or fine-tuning multiple network operations during dynamic network conditions prevailing in the communication network or for simulating different conditions in the communication network. The operations, among others, may be executed for generation of an output related to a specific condition in the communication network, that is dependent upon an assessment by a user. The user, (i.e., a network operation team or a network administrator, tasked for monitoring and maintaining the communication network) may select one or more operations for execution to receive the output related to the specific condition.
[0048] FIG. 1 illustrates an exemplary environment of a system 100 for executing one or more operations associated with nodes in a communication network, in accordance with an embodiment of the present disclosure. The embodiment of the environment of a system 100 shown in FIG. 1 is for illustration only. Other embodiments of the environment of the system 100 may be used without departing from the scope of this disclosure.
[0049] As shown in FIG. 1, the system 100 includes a server 110, a plurality of nodes 120-1 to 120-n (collectively referred to as “nodes 120”), a Network Management Console (NMC) 130, an API gateway 140, and a Distributed File System (DFS) 160. Each component of the system 100 may be communicatively coupled with other components of the system 100 via a network 150.
[0050] The server 110 may be a network of computers, a software framework, or a combination thereof, that may provide a generalized approach to create a server implementation. Examples of the server 110 may include, but are not limited to, personal computers, laptops, mini-computers, mainframe computers, any non-transient and tangible machine that can execute a machine-readable code, cloud-based servers, distributed server networks, or a network of computer systems. The server 110 may be realized through various web-based technologies such as, but not limited to, a Java web-framework, a .NET framework, a Personal Home Page (PHP) framework, or any web-application framework.
[0051] Preferably, each of the nodes 120 may include one of at least one Base Station (BS), at least one relay, and at least one Distributed Unit (DU). The BS may be a network infrastructure that provides wireless access to one or more terminals. Examples of the BS include, but are not limited to, a macro cell, a femtocell, wireless “Access Point (AP),” “evolved NodeB (eNodeB) (eNB),” “5th Generation (5G) node,” “next generation NodeB (gNB),” “wireless point,” “Transmission/Reception Point (TRP),”. The BS may provide wireless access in accordance with wireless communication protocols, e.g., 5G/NR 3GPP New Radio interface/access (NR), Long Term Evolution (LTE), LTE-Advanced (LTE-A), High Speed Packet Access (HSPA), Wi-Fi 802.11a/b/g/n/ac, etc. Aspects of the present disclosure are intended to include, or otherwise cover, any technology (known or later developed) bearing same or similar characteristics as of the above-mentioned BS, without deviating from the scope of the present disclosure. Each node 120 may serve one or more UE. The UE may be referred to as “mobile station,” “subscriber station,” “remote terminal,” “wireless terminal,” or “receive point.” Examples of the UE include, but is not limited to, portable handheld electronic devices such as a mobile phone, a tablet, a laptop, a smart watch etc., or fixed electronic devices such as a desktop computer, computing device, etc. utilized by users to access services provided by the network 150.
[0052] The NMC 130 (alternatively referred to as a “user device 130”) may correspond to, but not limited to, a desktop computer, a portable computing device such as a laptop, a tablet computer, a handheld computer, a mobile phone, wearable computer, or any other device suitable to provide front end services. The NMC 130 enables the network operations team to monitor and configure the communication network. The NMC 130 may be utilized to identify, configure, monitor, update, and troubleshoot network devices in the communication network. Front-end services of the NMC 130 may include a Graphical User Interface (GUI) 132 (alternatively referred to as “User Interface (UI) 132” or “front-end interface 132” or “display interface 132”) for accessing different functionalities of the system 100. The GUI 132 may include a software or a web application for initiating user request(s) to execute one or more operations associated with the nodes 120, by selecting the one or more operations. The GUI 132 may further allow a user to input a set of network attributes along with threshold values of the set of network attributes associated with the one or more operations.
[0053] The NMC 130 may further include a communication unit 134 for communicating with the server 110. The communication unit 134 may include a plurality of antennas, a plurality of Radio Frequency (RF) transceivers, a transmit processing circuitry, and a receive processing circuitry. The communication unit 134 may allow the NMC 130 to receive from the server 110 an output corresponding to the user request.
[0054] The NMC 130 may be in communication with the server 110 via the network 150. Further, the network 150 enables communication between various components of the system 100. The network 150 may include wired connections, wireless connections utilizing communication protocols such as 5G/NR 3GPP New Radio interface/access (NR), LTE, LTE-A, HSPA, Worldwide Interoperability for Microwave Access (WiMAX), Wi-Fi 802.11a/b/g/n/ac, or a proprietary Internet Protocol (IP) network, or a combination of wired and wireless connections.
[0055] The NMC 130 may communicate with the server 110 via the API gateway 140 to provide dynamic and secure API routing for requests from the users via the GUI 132. Preferably, the API gateway 140 may be an API oriented serially centralized management and control server that bridges between the NMC 130 and the server 110 for providing functionalities such as permission verification for the request, load balancing, caching, and monitoring of requests from the NMC 130. The API gateway 140 may provide an interface for REpresentational State Transfer (REST) or Hypertext Transfer Protocol (HTTP) based APIs between the server 110 and the NMC 130.
[0056] The DFS 160 stores and manages the source data collected from the nodes 120. The DFS 160 allows seamless access and/or retrieval of source data, as and when required by the server 110 for further processing and storage of the source data for execution of the one or more operations. The DFS 160 is configured to provide a scalable and fault-tolerant storage system, for handling the source data (such as performance metrics data including Key Performance Indicators (KPIs) of the nodes 120) and other operational data corresponding to the nodes 120 across distributed clusters of files associated with the server 110. Preferably, the DFS 160 may include storage medium for data storage. Examples of the storage medium include, but are not limited to, disk drives, hard-disk arrays, solid state storage devices, Network Attached Storage (NAS) devices, tape libraries or other magnetic, non-tape storage devices, and optical media storage devices. In one embodiment, the DFS 160 may be integrated within the server 110 utilizing computing resources of the server 110 for storing and managing large volume of the source data.
[0057] Although FIG. 1 illustrates one example of the system 100, various changes may be made to FIG. 1. For example, the system 100 may include any number of nodes and user devices in any suitable arrangement, without deviating from the scope of the present disclosure. Further, various components in FIG. 1 may be combined, further subdivided, or omitted, and additional components may be added according to particular needs. It is understood that alternate embodiments of the system 100 are possible wherein one or more of the components of the system 100 may communicate with each other through the network 150.
[0058] FIG. 2 illustrates a block diagram depicting exemplary components of the server 110, in accordance with an embodiment of the present disclosure. The embodiment of the server 110 as shown in FIG. 2 is for illustration only. However, the server 110 may be implemented in a wide variety of configurations, and FIG. 2 does not limit the scope of the present disclosure to any particular implementation of the server 110.
[0059] As shown in FIG. 2, the server 110 includes an Input-Output (I/O) interface 210, one or more processors 220 (hereinafter interchangeably referred to as “processor 220 or “at least one processor 220”), a memory 230, module(s) 240 (hereinafter interchangeably referred to as ‘unit(s) 240'), a database 250, a scheduler 260, a communication interface 270, and distributed microservice(s) 280. Various components of the server 110 may be communicatively coupled to each other via a communication bus 290.
[0060] The I/O interface 210 may include suitable logic, circuitry, interfaces, and/or codes that may be configured to receive input(s) and present (or display) output(s) on the server 110. For example, the I/O interface 210 may have an input interface and an output interface. The input interface may be configured to enable the user to provide input(s) to trigger (or configure) the server 110 to execute the one or more operations associated with the nodes 120. Examples of the input interface may include, but are not limited to, a touch interface, a mouse, a keyboard, and the output interface includes a digital display, an analog display, or a touch screen display. Aspects of the present disclosure are intended to include or otherwise cover any type of the input interface including known, related art, and/or later developed technologies without deviating from the scope of the present disclosure.
[0061] The processor 220 may include processing circuitry, logic, interface(s), and/or code(s), and may be configured to communicate with other components of the server 110 (i.e., the memory 230 the module(s) 240, the database 250, the scheduler 260, the communication interface 270, and the distributed microservice(s) 280) via the communication bus 290. Examples of the communication bus 290 may include, but are not limited to, a Peripheral Component Interconnect (PCI)/PCI Extended (PCI-X) bus, Small Computer System Interface (SCSI), Universal Serial Bus (USB), and a Front Side Bus (FSB). Aspects of the present disclosure are intended to include or otherwise cover any type of coupling means present or related to later developed technologies, that may be configured to connect the processor 220 to the other subsystems of the server 110, as the communication bus 290, without deviating from the scope of the present disclosure.
[0062] The processor 220 may include processing circuitry configured to execute instructions 230-1 (hereinafter interchangeably referred to as “a set of instructions 230-1”) stored in the memory 230 to cause the server 110 to perform various processes (e.g. execution of the operations associated with the nodes 120). The processor 220 may also include a plurality of analytics engines i.e., information processing units for controlling overall operation of the server 110 associated with embodiments of the present disclosure and for executing the one or more operations associated with the nodes 120 in the communication network. The analytics engines may be configured to handle a set of tasks or computations executed by the processor 220 in a distributed computing environment. For an example, the processor 220 may be configured to execute programs and processes to execute instruction(s) or code(s) stored in the memory 230 pertaining to execution of the operations associated with the nodes 120. The processor 220 is further configured to move data into or out of the memory 230 as required by an execution process of the server 110.
[0063] Examples of the processor 220 may include, but are not limited to, a Central Processing Unit (CPU), an Application Processor (AP), a dedicated processor, a graphics-only processing unit such as a Graphics Processing Unit (GPU), a programmable logic device, or any combination thereof.
[0064] The memory 230 is configured to store the set of instructions 230-1 required by the processor 220 for controlling overall operations of the server 110. A part of the memory 230 may include a RAM, a cache memory, or a ROM. The memory 230 may include non-volatile storage elements. Examples of such non-volatile storage elements may include magnetic hard discs, optical discs, floppy discs, flash memories, or forms of electrically programmable memories (EPROM) or electrically erasable and programmable (EEPROM) memories. In addition, the memory 230 may, in some examples, be implemented using a non-transitory storage medium. The "non-transitory" storage medium is not embodied in a carrier wave or a propagated signal. However, the term "non-transitory" should not be interpreted that the memory 230 is non-movable. In certain examples, a non-transitory storage medium may store data that can, over time, change (e.g., in Random Access Memory (RAM) or cache). The memory 230 can be an internal storage unit or it can be an external storage unit of the server 110, cloud storage, or any other type of external storage. In some embodiments, when the memory 230 is external to the server 110, the memory 230 may be removably attached to the server 110. Aspects of the present disclosure are intended to include or otherwise cover any data storage medium as ‘the memory 230’, without deviating from the scope of the present disclosure.
[0065] In an aspect of the present disclosure, the processor 220 is configured to control content to be rendered through the GUI 132, specifically to display a drop-down list of selectable options corresponding to the one or more operations (collectively referred to as “operations”) for receiving a first input from the user. Based on a selection of an operation from the list of the one or more operations received from the user, the processor 220 is configured to control the content to be rendered through the GUI 132 to display an operation settings panel through the GUI 132. The operational setting panel may include a list of the plurality of network attributes associated with the selected operation. Through the operation settings panel, the processor 220 is configured to receive a second input including a selection of a set of network attributes from a plurality of network attributes associated with the selected operation and a threshold value for each network attribute in the selected set of network attributes.
[0066] The operations corresponds to monitoring one or more of Physical Resource Block (PRB) utilization of the nodes 120, spectral efficiency of the nodes 120, carrier load balancing of the nodes 120, Radio Resource Control (RRC) connection of the nodes 120, performance of the nodes 120 in the communication network, Frequency Division Duplexing (FDD) to Time Division Duplexing (TDD) load balancing of the nodes 120, and identifying inactive node(s) from the nodes 120 in the communication network.
[0067] Each of the operations may be related to the plurality of network attributes. The plurality of network attributes may correspond to either of, one or more of network parameters, Key Performance Indicators (KPIs), and KPIs associated with the network parameters Key Performance Indicators (KPIs), or a combination thereof. The plurality of network attributes may include one or more of an average downlink Physical Resource Block (PRB) utilization, an average uplink PRB utilization, throughput, peak number of Radio Resource Control (RRC) connected users, traffic threshold, a percentage of call drops, a percentage of node accessibility, a percentage of node availability, a consistency period of the monitoring the nodes 120, a Block Error Rate (BLER), and an average Received Signal Strength Indicator (RSSI).
[0068] Among the plurality of network attributes, the KPIs may include, but not limited to, a range of traffic threshold values served by the node(s) 120 in a pre-defined time period, a value of throughput delivered by the node(s) 120, a percentage of call drops in the location served by the node(s) 120, a percentage of node accessibility, a percentage of node availability, a number of data calls served by the node(s) 120, a number of voice calls served by the node(s) 120, a number of handovers performed by the node(s) 120, and a condition related to an interference experienced by the node(s) 120 from a neighboring node 120.
[0069] In an embodiment, the module(s) 240 may be implemented as a combination of hardware and software programming (for example, programmable instructions) to implement one or more functionalities of the server 110. In non-limiting examples, described herein, such combinations of hardware and software programming may be implemented in several different ways, without deviating from the scope of the present disclosure. The module(s) 240 may include suitable logic, circuitry, interfaces, and/or codes. For example, the programming for the module(s) 240 may be processor-executable instructions stored on a non-transitory machine-readable storage medium and the hardware for the processor 220 may comprise a processing resource (for example, one or more processors), to execute such instructions. In an embodiment, the module(s) 240 may be combined to a single module or each module of the module(s) 240 may be further subdivided into different modules.
[0070] In the present examples, the machine-readable storage medium may store instructions that, when executed by the processing resource, implement the module(s) 240. In such examples, the server 110 may also comprise the machine-readable storage medium storing the instructions and the processing resource to execute the instructions, or the machine-readable storage medium may be separate but accessible to the server 110 and the processing resource. In other examples, the module(s) 240 may be implemented using an electronic circuitry.
[0071] In one or more embodiments, the module(s) 240 may include one or more modules selected from any of a reception module 242, an execution module 244, a database management module 246, a processing module 248, and other units (not shown in FIG. 2). Each of the module(s) 240 is communicatively coupled to the others.
[0072] In one embodiment, the processor 220, using the reception module 242, is configured to receive the first input and the second input from the user. The first input corresponds to a selection of an operation from the one or more operations to be performed in the communication network. The second input includes a selection of a set of network attributes from the plurality of network attributes associated with the selected operation and a threshold value for each network attribute in the selected set of network attributes. The set of network attributes may include each of the plurality of network attributes or may be a subset of the plurality of network attributes. Based on a requirement of the user, the processor 220 is configured to control the GUI 132 to display options for the user to select the set of network attributes.
[0073] Based on the first input and the second input the processor 220 using the database management module 246, generates a record of the first input and the second input in association with each other in the database 250. Examples of the database management module 246 may include, but not limited to, a storage handler, a cloud-based storage manager, and the like. In one embodiment, in the database 250, an association may be created between the selected operation and the selected set of network attributes along with corresponding threshold value for each network attribute in the selected set of network attributes. Based on the association, a record of the selected operation in association with the selected set of network attributes along with the corresponding threshold value for each network attribute is generated. The record may be organized in a tabular form or in form of spreadsheets in the database 250. In a non-limiting example, the record for the selected set of network attributes and corresponding threshold values of each network attribute in the selected set of network attributes may be stored in the database 250 as below mentioned Table 1:
Operation Network Attributes Threshold Value
FDD to TDD load balancing
Downlink BLER 10
Total days of consistency 10
Average Downlink PRB utilization 70
Average PRB threshold (5 MHz) 5
Inactive nodes/ dead cell analysis Total days of consistency 7
Average PRB threshold (10MHz) 5
Average PRB threshold (5MHz) 5
Low PRB utilization Average downlink PRB utilization (%) 67
Peak RRC connected users 45
Traffic threshold 200
Uplink BLER 10
Table 1
[0074] In another embodiment, in the database 250, a first association may be created between the selected set of network attributes and corresponding threshold value for each network attribute. A second association may be created between the selected operation and the selected set of network attributes. Based on the first association and the second association, a record of the selected operation in association with the selected set of network attributes along with the corresponding threshold value for each network attribute is generated.
[0075] The database 250 stores plurality of generated records of the selected operation in association with the selected set of network attributes along with the corresponding threshold value for each network attribute. The databases 250 may be implemented as one or more of centralized database, Relational Database Management System (RDBMS), Non-Relational Database Management System, Hierarchical Database Management System, Network Database Management System, an in-memory database including a distributed in-memory data storage, distributed database, or a distributed file system.
[0076] In one embodiment, the processor 220, using the processing module 248, determines whether the execution module 244 is triggered for executing the selected operation upon generation of the record in the database 250. The execution module 244 may be triggered based on one of a user action, by the scheduler 260, or an event-driven process.
[0077] The scheduler 260 may be set to trigger the execution module 244 at a predefined interval for execution of the selected operation at the predefined interval. In one embodiment, the processor 220 controls the GUI 132, to display an option to the user to set the predefined interval for the triggering of the scheduler 260. In another embodiment, the processor 220 controls the GUI 132, to display a button to the user to trigger the execution of the selected operation upon pressing of the button by the user.
[0078] In one embodiment, upon a determination that the execution module 244 is triggered, the processor 220, using the processing module 248, loads the selected set of network attributes and the threshold value for each network attribute from the database 250 into the memory 230 prior to execution of the selected operation. In one embodiment, the selected set of network attributes and the threshold value for each network attribute may be loaded from the database 250 into the in-memory storage of the server 110. The in-memory storage may correspond to a distributed in-memory database hosted over the server 110 utilizing a portion of the memory 230 or the RAM for storage and access of the generated records from the database 250, thereby reducing response time in execution of the operation.
[0079] In one embodiment, the processor 220, using the execution module 244, executes the selected operation using the selected set of network attributes and the threshold value for each network attribute loaded into the memory 230. Furthermore, the processor 220, using the processing module 248 generates an output based on the execution of the selected operation. The processor 220 is configured to generate an output in case a condition set in the selected operation is encountered in the communication network. The processor 220, using the processing module 248, is configured to monitor values of the plurality of network attributes corresponding to the nodes 120 to identify a node among the nodes 120 violating the threshold value for each network attribute. For execution of the operation, the processor 220, using the processing module 248, is configured to fetch the performance metrics data from the DFS 160 including values of the set of network attributes.
[0080] The communication interface 270 may manage communications with the NMC 130, the network 150, and the DFS 160. For example, the communication interface 270 may manage the reception of the performance metrics data from the DFS 160. The communication interface 270 may include an electronic circuit specific to a standard that enables wired or wireless communication. The communication interface 270 is configured for communicating with external devices via one or more networks. Further, the communication interface 270 may also provide a communication pathway for one or more components of the server 110. Examples of such components include, but are not limited to, the module(s) 240 and the databases 250.
[0081] Further, the server 110 may host a plurality of microservices 280 (alternatively referred to as “microservices 280”, or “distributed microservice 280”). The server 110 may utilize a plurality of computing resources where the plurality of microservices 280 may be deployed, and a plurality of storage devices such as a database may be provided in the computing resource for each microservice. It must be understood that the microservices platform may also be hosted outside the server 110 in a similar manner utilizing the resources of a computing device separate from the server 110 itself. The NMC 130 may access the microservices 280 via the API gateway 140. The microservices 280 may be utilized by the processor 220 to handle call flow between the front-end interface 132 and the module(s) 240. The processor 220 utilizes the microservices 280 to receive the first input and the second input from the GUI 132. The processor 220 also utilizes the microservices 280 to generate the record of the first input and the second input in association with each other. The microservices 280 also fetches the record of the first input and the second input associated with each other from the database 250.
[0082] Although FIG. 2 illustrates one example of server 110, various changes may be made to FIG. 2. For example, the server 110 may include any number of components in addition to the components shown in FIG. 2. Further, various components in FIG. 2 may be combined, further subdivided, or omitted, and additional components may be added according to particular needs. A detailed description of the method for execution of the operations associated with the nodes 120 in the communication network is described further below.
[0083] In an alternate embodiment, each module of the module(s) 240 (i.e., the reception module 242, the database management module 246, the execution module 244, and the processing module 248) is configured to independently perform various operations of the processor 220, as described herein, without deviating from the scope of the present disclosure.
[0084] FIG. 3 illustrates a method 300 for executing operations associated with the nodes 120 in the communication network, in accordance with an embodiment of the present disclosure. Example blocks of step 302 to 312 of the method 300 are performed by one or more components of the server 110 as disclosed in Fig. 2, for executing operations associated with the nodes 120 in the communication network. Although method 300 shows the example blocks of steps 302 to 312, in some embodiments, the method 300 may include additional steps, fewer steps or steps in different order than those depicted in FIG. 3. In other embodiments, the steps 302-312 may be combined or may be performed in parallel.
[0085] At step 302, the processor 220 receives the first input and the second input from the user for executing operations associated with the nodes 120 in the communication network. The first input corresponds to the selection of the operation from the one or more operations to be performed in the communication network. The second input includes the selection of the set of network attributes from the plurality of network attributes associated with the selected operation and the threshold value for each network attribute in the selected set of network attributes.
[0086] For receiving the first input, the processor 220, using the processing module 248, controls the GUI 132 to display the drop-down list of selectable options corresponding to the operations. Through the GUI 132, the processor 220 receives the selection of the operation to be executed.
[0087] Upon receiving the first input, the processor 220, using the processing module 248, fetches from the database 250, the plurality of network attributes associated with the selected operation and the threshold value corresponding to each network attribute based on the selection of the operation from the displayed drop-down list.
[0088] The processor 220, using the processing module 248, controls the GUI 132 of the user device 130 to display the plurality of network attributes and the threshold value corresponding to each network attribute. In response to the displayed plurality of network attributes and the threshold value corresponding to each network attribute, the processor 220 receives the second input from the user device 130.
[0089] In one embodiment, upon receiving the selection of the operation in the first input from the user device 130, the processor 220, using the processing module 248, fetches from the database 250, the record of the plurality of network attributes associated with the selected operation and the threshold value corresponding to each network attribute based on the selected operation. The fetched record of the selected operation associated with the plurality of network attributes and the threshold value corresponding to each network attribute may correspond to a pre-defined record of association of the selected operation with the plurality of network attributes and the threshold value corresponding to each network attribute.
[0090] In another embodiment, upon receiving the selection of the operation in the first input from the user device 130, the processor 220, using the processing module 248, fetches from the database 250, the record of the plurality of network attributes associated with the selected operation and the threshold value corresponding to each network attribute. The fetched record of the selected operation associated with the plurality of network attributes and the threshold value corresponding to each network attribute may correspond to a record generated in the database 250 during a previous iteration of execution of the selected operation.
[0091] In another embodiment, the processor 220, using the processing module 248, controls the GUI 132 of the user device 130 to display one or more configurable fields for receiving a modified set of network attributes and a modified threshold value corresponding to each network attribute. The processor 220, using the reception module 242, receives the modified set of network attributes associated with the selected operation and the modified threshold value corresponding to each network attribute among the modified set of network attributes, via an input operation performed by the user through the one or more user configurable fields.
[0092] At step 304, the processor 220 generates the record of the first input and the second input in association with each other. In another embodiment, the processor 220, using the database management module 246, updates in the database 250, the record associated with the selected operation with the modified set of network attributes and the modified threshold value corresponding to each network attribute, based on the input operation performed by the user through the one or more user configurable fields.
[0093] At step 306, upon generation or update of the record in the database 250, the processor 220 determines whether the execution module 244 is triggered for executing the selected operation. In one embodiment, the execution module 244 may be configured to be triggered for execution of the operation by the scheduler 260, at the pre-defined time interval or in case of a pre-defined event driven process. The execution module 244 may be triggered for execution of the operation on command by the user, based on reception of the user action through the GUI 132. The user command or the user action for execution of the operation may be received by the reception module 242.
[0094] At step 308, upon the determination that the execution module 244 is triggered, the processor 220, using the processing module 248, loads the record of the selected set of network attributes and the threshold value for each network attribute from the database 250 corresponding to the selected operation, into the memory 230 prior to execution of the selected operation. Loading of the records in the memory 230 or in the in-memory storage reduces response time for the user in execution of the operation and receiving the output. In another embodiment, upon the determination that the execution module 244 is not triggered, the processor 220 retains the record of the selected set of network attributes and the threshold value for each network attribute associated with the selected operation in the database 250. The record of the association is utilized by the processor 220 for execution of the selected operation upon receiving the trigged.
[0095] At step 310, the processor 220, using the execution module 244, executes the selected operation using the selected set of network attributes and the threshold value for each network attribute loaded into the memory 230 or the in-memory. For execution of the selected operation, the processor 220 may fetch current or present values of one or more of values of the KPIs of the selected set of network attributes and KPIs associated with the network parameters among the selected set of network attributes of the nodes 120 from the DFS 160. Optionally, the processor 220 may also fetch operational data of the nodes 120 and other details of the nodes 120 such as vendor details of the nodes 120, and geographical location of the nodes 120.
[0096] The one or more of values of the KPIs of the selected set of network attributes and KPIs associated with the network parameters among the selected set of network attributes may be monitored. Furthermore, the fetched values may be compared with the loaded threshold value for each network attribute corresponding to each of the selected set of network attributes. Upon comparison of each of the fetched values and the loaded threshold value for each network attribute, the processor 220 determines a node among the nodes 120 violating the loaded threshold value for each network attribute from the selected set of network attributes.
[0097] At step 312, the processor 220, using the processing module 248, generates the output based on the execution of the selected operation. Generation of the output may comprise identifying a set of nodes among the nodes 120, that violate the loaded threshold value based on the execution of the operation. In one embodiment, the processor 220, using the processing module 248 controls the user device 130 to display on the GUI 132, the identified set of nodes violating the threshold value as the output. In another embodiment, the processor 220, using the processing module 248, sends an alert corresponding to the identified set of nodes violating the threshold value on the user device 130.
[0098] In one embodiment, the processor 220, using the processing module 248, controls the GUI 132 of the user device 130, to display an operation settings panel to the user. Through the operation setting panel, the processor 220 receives the modified set of network attributes associated with the selected operation and the modified threshold value corresponding to each network attribute among the modified set of network attributes. It may be understood that the GUI 132 comprises one or more screens to enable the user to view the operation settings panel and the output generated based on execution of the selected operation.
[0099] The operation settings panel may include an expandable drop-down list of selectable options corresponding to the operation. Upon selection of the operation, the processor 220 controls the GUI 132, to display in the operation settings panel, a list of the plurality of network attributes associated with the selected operation. The processor 220 may control the GUI 132, to display options for selecting the set of selected network attributes from the plurality of network attributes.
[0100] Along with list of the set of network attributes, the processor 220 controls the GUI 132, to display a list of the threshold value for each network attribute of the selected set of network attributes. Corresponding to each threshold value, the operation settings panel includes the one or more user configurable fields. Through one or more user configurable fields, the processor 220 controls the GUI 132, to present options to the user to input, delete, modify, and save the selected set of network attributes associated with the selected operation and the threshold value for each network attribute.
[0101] In a non-limiting example GUI 132, the operation settings panel may include an input field corresponding to each threshold value. Through the input field, the processor 220 may control the GUI 132, to receive from the user an input of a new threshold value or a range of threshold values for a corresponding network attribute. Furthermore, the operation settings panel may include a stepper field corresponding to each threshold value. Through the stepper field, the processor 220 may control the GUI 132, to receive from the user a step-up or a step-down modification in the displayed threshold value corresponding to each network attribute.
[0102] In another non-limiting example GUI 132, the operation settings panel may further include a check box option corresponding to the list of the displayed plurality of network attributes associated with the selected operation and the threshold value, for selecting a particular network attribute from the displayed plurality of network attributes. Upon the selection of any network attribute, the processor 220 may control the GUI 132, to display options for deletion of the selected network attribute from the displayed plurality of network attributes. Similarly, upon the selection of any network attribute, the processor 220 may control the GUI 132, to display options for saving the selected network attribute in the set of network attributes in association with the selected operation.
[0103] After receiving the selection of the set of network attributes and the threshold value for each network attribute in the selected set of network attributes, the processor 220 may control the GUI 132, to prompt the user to select a “Save” button for saving the set of network attributes and the threshold value in association with the selected operation, a “Cancel” button to discard the set of network attributes and the threshold value in association with the selected operation, and a “Submit” button to initiate execution of the selected operation. In another embodiment, the processor 220 may control the GUI 132, to present the user with option to initiate execution of the selected operation through the “Submit” button even if no modification is made to the displayed set of network attributes and the threshold value of each network attribute.
[0104] In another embodiment, for pre-emptive maintenance of the communication network, the disclosed system and the method may be utilized to simulate a condition in the communication network and test run the execution of the operation. In a first iteration, upon receiving the first input and the second input corresponding to the selected operation, the user is displayed the set of network attributes from the plurality of network attributes associated with the selected operation and the threshold values. The user may trigger, through the GUI 132, the execution module 244 for execution of the selected operation and receive a first output. Based on an analysis of the first output, the user may simulate a desired condition by modifying the set of network attributes associated with the selected operation and the threshold values, for executing the same operation.
[0105] In a second iteration, when the user may select the same operation for execution, the processor 220 controls the GUI 132, to display the set of network attributes from the plurality of network attributes associated with the selected operation and the threshold value used in the first iteration of execution of the operation. The processor 220 controls the GUI 132, to provide the one or more user configurable fields to the user for modification of the set of network attributes from the plurality of network attributes associated with the selected operation and the threshold values.
[0106] The processor 220 updates the record and upon determination that the execution module 244 is triggered for execution of the selected operation, the processor 220 loads the updated record and executes the selected operation using the updated the set of network attributes associated with the selected operation and the threshold values. Based on the execution of the selected operation in the second iteration, the processor 220 may generate a second output. For example, to shift the network traffic from one layer to another, the user may use stringent set of network attributes for identifying one set of nodes and liberal/relaxed set of network attributes for identifying another set of nodes.
[0107] FIG. 3 presents an embodiment of the present disclosure where various operations (i.e., presented by way of the steps 302 through 312) are performed by the processor 220 using the module(s) 240. However, as will be appreciated by a person of ordinary skill in the art, in an alternate embodiment, the various operations of the steps 302 through 312 may be performed independently by the module(s) 240, without deviating from the scope of the present disclosure.
[0108] FIG. 4 illustrates a method 400 for executing an example operation for generation of an alert associated with resource utilization in the communication network, in accordance with an embodiment of the present disclosure.
[0109] At step 402, the processor 220 receives a selection of operation corresponding to monitoring low PRB utilization in the communication network. Corresponding to the selected operation, the processor 220 receives the set of network attributes including average downlink PRB utilization (in %), peak RRC connected users, traffic threshold, and residual uplink BLER. Corresponding to each network attribute, the processor 220 receives a threshold value. For example, 67% average downlink PRB utilization, 45 peak RRC connected users, 200 GB traffic threshold, and 10% residual uplink BLER.
[0110] At step 404, the processor 220 generates a record of the set of network attributes associated with monitoring low PRB utilization in the communication network and the corresponding threshold values.
[0111] At step 406, upon receiving a command from the user for triggering the execution module 244, the processor 220 loads the record corresponding to the operation for monitoring low PRB utilization into the in-memory and executes the operation.
[0112] At step 408, the processor 220 executes the operation for generation of the alert upon identifying low PRB utilization of the nodes 120 in the communication network. For execution of the operation, the processor 220 fetches values of KPIs corresponding to the set of network attributes. Based on a determination that one or more of threshold values for the one or more KPIs is breached, a set of threshold violating nodes among the nodes 120 is identified.
[0113] At step 410, consequent to execution of the operation, an output comprising an alert corresponding to the identified set of nodes is sent to the user over the user device 130 in form of a notification. In one embodiment, the system 100 may be configured to take further action based on the output of the identified set of nodes with low PRB utilization.
[0114] In another embodiment, for seamlessly integrating front-end and back-end process for execution of the operations, the processor 220 utilizes the microservices 280.
[0115] FIG. 5 illustrates a call flow diagram 500 depicting information exchange between the UI 132 and the server 110 for execution of the operations associated with the nodes 120 in the communication network, in accordance with an embodiment of the present disclosure. In particular, the call flow diagram 500 depicts a detailed illustration of one or more steps of the method 300 along with information flow between the one or more components of the server 110.
[0116] At instance 502, the user through the UI 132 running on the user device 130 interacts with the server 110 via the API gateway 140. The UI 132 provides an interface for the users to create a request for execution of the operation by providing the first input and the second input. The request includes the first input i.e. selection of an operation from the displayed list of operations and the second input i.e. selection of attribute settings including the set of network attributes and the threshold value for each network attribute associated with the operation. The request may be sent as the API call request to the API gateway 140 for routing to an application server (alternatively referred to as “App server” or the “server 110”).
[0117] At instance 504, the API gateway 140 communicates the request to an at least one microservice of the microservice(s) 280. The API gateway 140 initiates, via the execution module 244, the API call request to the microservice 280 deployed in the server 110. In one embodiment, the API call request generated by the App server 110 corresponds to a REST request or a HTTP request.
[0118] At instance 506, the processor 220 using the database management module 246, creates or updates the record of the attribute settings in the database 250 in association with the selected operation, for future reference and processing of the selected operation, upon transmission of the API call request. The database 250 may organize the records of the first input and the second input associated with each other in a relational manner such as in a table, or a non-relational manner such as in graphics and time series data.
[0119] At instance 508, the scheduler 260 triggers the execution module 244 for execution of the operation requested by the user. The execution module 244 may be triggered by the scheduler 260 on command from the user or in a pre-defined time interval or on a pre-defined event.
[0120] Upon receiving the trigger, at instance 510, the processor 220, using the execution module 244, initiates a call to the at least one microservice of the microservice(s) 280 for requesting the attribute settings associated with the selected operation from the database 250.
[0121] At instance 512, the at least one microservice of the microservice(s) 280 fetches the record of the attribute settings associated with the selected operation stored in the database 250. In one embodiment, the at least one microservice of the microservice(s) 280 utilized at instances 504, 510, and 512 may be same. In another embodiment, a first microservice of the microservice(s) 280 may be utilized at instance 504 and a second microservice of the microservice(s) 280 may be utilized at instances 510 and 512.
[0122] For execution of the operation, at instance 514, a response including the attribute settings associated with the selected operation is transferred to the processor 220. The processor 220 may load the attribute settings associated with the selected operation in the in-memory storage for faster access.
[0123] At instance 516, for executing the selected operation in accordance with the associated with the attribute settings, the processor 220 fetches values of the set of network attributes selected in the attribute settings from the DFS 160.
[0124] At instance 518, the processor 220 receives the values of the set of network attributes selected in the attribute settings from the DFS 160 and performs sophisticated processing, analysis, and computation tasks over the received values. Upon processing the values, the processor 220 determines if one or more values of the set of network attributes violates the threshold value of each network attribute of the set of network attributes.
[0125] At instance 520, upon execution of the operation, an output corresponding to the operation is generated. The output corresponds to identification of the set of nodes violating the threshold values. The processor 220 also controls the UI 132 to display the identified set of nodes or sending an alert to the user through the user device 130 corresponding to the identified set of nodes.
[0126] Now, referring to the technical abilities and advantageous effect of the present disclosure, operational advantages that may be provided by one or more embodiments may include providing an adaptive framework for configuring one or more user defined attributes for executing the one or more operations in dynamic network conditions. Another potential advantage of the present disclosure includes referring to the attribute settings stored in the database before execution of the operations, which effectively reduces latency in execution of the operation.
[0127] Yet another potential advantage offered by the present disclosure refers to the operations settings panel, where the attributes for the operations for different scenarios can be easily tuned by the user from the front end with zero development efforts in changing the process code. The disclosed technical solution allows the user to configure operation(s) for a specific condition and pre-setting or storing the attributes settings for the operation in the system 100 for future use by the users. The disclosed technical solution also allows for storage of pre-settings of a variety of operations for different conditions in the communication network, and also enables easy modification of configurations of the pre-set operations in accordance with changing network conditions.
[0128] Still another advantage offered by the present disclosure relates to enabling the user to conduct efficiency trials corresponding to resources in the communication network by configuration of the attribute settings as the users are able to observe impact of change in attributes settings. Moreover, the system and the method may be utilized to executing operations for simulating different conditions in the communication network and obtains output for each condition. Upon analysis of such output, the user can take appropriate corrective or precautionary action for improving efficiency of the communication network. Furthermore, the present disclosure provides use of a microservices framework for generating record and loading of the attribute settings associated with the operations, offering a seamless user experience by reducing the latency in execution of the one or more network operations.
[0129] Embodiments of the present technology may be described herein with reference to flowchart illustrations of methods and systems according to embodiments of the technology, and/or procedures, algorithms, steps, operations, formulae, or other computational depictions, which may also be implemented as computer program products. In this regard, each block or step of the flowchart, and combinations of blocks (and/or steps) in the flowchart, as well as any procedure, algorithm, step, operation, formula, or computational depiction can be implemented by various means, such as hardware, firmware, and/or software including one or more computer program instructions embodied in computer-readable program code. As will be appreciated, any such computer program instructions may be executed by one or more computer processors, including without limitation a general-purpose computer or special purpose computer, or other programmable processing apparatus to perform a group of operations comprising the operations or blocks described in connection with the disclosed methods.
[0130] Further, these computer program instructions, such as embodied in computer-readable program code, may also be stored in one or more computer-readable memory or memory devices (for example, the memory 230) that can direct a computer processor or other programmable processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory or memory devices produce an article of manufacture including instruction means which implement the function specified in the block(s) of the flowchart(s).
[0131] It will further be appreciated that the term “computer program instructions” as used herein refer to one or more instructions that can be executed by the one or more processors (for example, the processor 220) to perform one or more functions as described herein. The instructions may also be stored remotely such as on a server, or all or a portion of the instructions can be stored locally and remotely.
[0132] Those skilled in the art will appreciate that the methodology described herein in the present disclosure may be carried out in other specific ways than those set forth herein in the above disclosed embodiments without departing from essential characteristics and features of the present invention. The above-described embodiments are therefore to be construed in all aspects as illustrative and not restrictive.
[0133] The drawings and the forgoing description give examples of embodiments. Those skilled in the art will appreciate that one or more of the described elements may well be combined into a single functional element. Alternatively, certain elements may be split into multiple functional elements. Elements from one embodiment may be added to another embodiment. For example, orders of processes described herein may be changed and are not limited to the manner described herein. Any combination of the above features and functionalities may be used in accordance with one or more embodiments.
[0134] In the present disclosure, each of the embodiments has been described with reference to numerous specific details which may vary from embodiment to embodiment. The foregoing description of the specific embodiments disclosed herein may reveal the general nature of the embodiments herein that others may, by applying current knowledge, readily modify and/or adapt for various applications such specific embodiments without departing from the generic concept, and, therefore, such adaptations and modifications are intended to be comprehended within the meaning of the disclosed embodiments. It is to be understood that the phraseology or terminology employed herein is for the purpose of description and is not limited in scope.
LIST OF REFERENCE NUMERALS
[0135] The following list is provided for convenience and in support of the drawing figures and as part of the text of the specification, which describe innovations by reference to multiple items. Items not listed here may nonetheless be part of a given embodiment. For better legibility of the text, a given reference number is recited near some, but not all, recitations of the referenced item in the text. The same reference number may be used with reference to different examples or different instances of a given item. The list of reference numerals is:
100 - System for executing one or more operations associated with nodes in a communication network
110 - Server
120 - Nodes
130 - Network Management Console (NMC)
132 – Graphical User Interface (GUI)
134 – Communication unit
140 - Application Programming Interface (API) gateway
150 - Network
160 – Distributed File System (DFS)
210 - Input-Output (I/O) interface
220 - Processor(s)
230 - Memory
230-1 - Instructions
240 - Module(s)
242 - Reception module
244 - Execution module
246 – Database Management module
248 - Processing module
250 - Database
260 - Scheduler
270 - Communication interface
280 - Microservice(s)
290 - Communication bus
300 – Method for executing operations associated with the nodes 120 in the communication network
302-312 - Operation steps of the method 300
400 - Method for executing an example operation for generation of an alert associated with resource utilization in the communication network
402-410 - Operation steps of the method 400
500 - Call flow diagram depicting information exchange between the user device 130 and the components of the server 110
502-520 - Operation steps of the call flow diagram 500
,CLAIMS:We Claim:
1. A method (300) for executing one or more operations associated with a plurality of nodes (120) in a communication network, the method (300) comprising:
receiving, by a reception module (242) from a user device (130), a first input corresponding to a selection of an operation from the one or more operations to be performed in the communication network, and a second input including a selection of a set of network attributes from a plurality of network attributes associated with the selected operation and a threshold value for each network attribute in the selected set of network attributes;
generating, by a database management module (246) in a database (250), a record of the first input and the second input in association with each other;
determining, by a processing module (248), whether an execution module (244) is triggered for executing the selected operation upon generation of the record in the database (250);
loading, by the processing module (248) upon a determination that the execution module (244) is triggered, the selected set of network attributes and the threshold value for each network attribute from the database into a memory (230) prior to execution of the selected operation;
executing, by the execution module (244), the selected operation using the selected set of network attributes and the threshold value for each network attribute loaded into the memory (230); and
generating, by the processing module (248), an output based on the execution of the selected operation.
2. The method (300) as claimed in claim 1, further comprising:
fetching, by the processing module (248) from the database (250), the plurality of network attributes associated with the selected operation and the threshold value corresponding to each network attribute based on the first input; and
controlling, by the processing module (248), the user device (130) to display the plurality of network attributes and the threshold value corresponding to each network attribute on a display interface (132), wherein the second input is received from the user device (130) in response to the displayed plurality of network attributes and the threshold value corresponding to each network attribute.
3. The method (300) as claimed in claim 2, further comprising:
controlling, by the processing module (248), the user device (130) to display a drop-down list of selectable options corresponding to the one or more operations for receiving the first input;
fetching, by the processing module (248) from the database (250), the plurality of network attributes associated with the selected operation and the threshold value corresponding to each network attribute based on a selection of the operation from the displayed drop-down list; and
controlling, by the processing module (248), the user device (130) to display, on the display interface (132), an operation settings panel including a list of the plurality of network attributes associated with the selected operation and one or more of an input field and a stepper field to modify the threshold value corresponding to each network attribute,
wherein the operation settings panel further includes one or more user configurable fields to input, delete, modify, and save the selected set of network attributes associated with the selected operation and the threshold value for each network attribute of the selected set of network attributes.
4. The method (300) as claimed in claim 3, further comprising:
receiving, by the reception module (242) via the operation settings panel, a modified set of network attributes associated with the selected operation and a modified threshold value corresponding to each network attribute among the modified set of network attributes, wherein the modified set of network attributes and the modified threshold value is received when an input operation is performed at the user device (130) via the one or more user configurable fields; and
updating, by the database management module (246) in the database (250), the record associated with the selected operation with the modified set of network attributes and the modified threshold value corresponding to each network attribute.
5. The method (300) as claimed in claim 4, wherein:
the record of the selected set of network attributes associated with the selected operation and the threshold value for each network attribute is generated and updated by the database management module (246) via initiation of an Application Programming Interface (API) call request; and
the API call request corresponds to a Hyper Text Transfer Protocol (HTTP) request that transmits the selected set of network attributes and the threshold value for each network attribute from the operation settings panel to the database (250).
6. The method (300) as claimed in claim 1, wherein the generation of the output by the processing module (248) comprises:
identifying a set of nodes among the plurality of nodes (120) violating the threshold value based on the execution of the operation; and
performing one or more of:
controlling the user device (130) to display, on the display interface (132), the identified set of nodes violating the threshold value; or
sending an alert corresponding to the identified set of nodes violating the threshold value.
7. The method (300) as claimed in claim 1, wherein the operation corresponds to monitoring one or more of Physical Resource Block (PRB) utilization of the plurality of nodes, spectral efficiency of the plurality of nodes (120), carrier load balancing of the plurality of nodes (120), Radio Resource Control (RRC) connection of the plurality of nodes, performance of the plurality of nodes (120) in the communication network, Frequency Division Duplexing (FDD) to Time Division Duplexing (TDD) load balancing of the plurality of nodes (120), and dead nodes in the communication network.
8. The method (300) as claimed in claim 1, wherein:
the plurality of network attributes corresponds to one or more of network parameters, Key Performance Indicators (KPIs), and KPIs associated with the network parameters; and
the plurality of network attributes include one or more of an average downlink Physical Resource Block (PRB) utilization, an average uplink PRB utilization, throughput, peak number of Radio Resource Control (RRC) connected users, traffic threshold, a percentage of call drops, a percentage of node accessibility, a percentage of node availability, a consistency period of the monitoring the plurality of nodes (120), a Block Error Rate (BLER), and an average Received Signal Strength Indicator (RSSI).
9. The method (300) as claimed in claim 1, wherein the triggering of the execution module (244) is initiated based on one of a user action, a scheduled task, or an event-driven process.
10. A system (100) for executing one or more operations associated with a plurality of nodes (120) in a communication network, the system (100) comprising:
a reception module (242) configured to receive from a user device (130), a first input corresponding to a selection of an operation from the one or more operations to be performed in the communication network, and a second input including a selection of a set of network attributes from a plurality of network attributes associated with the selected operation and a threshold value for each network attribute in the selected set of network attributes;
a database management module (246) configured to generate, in a database (250), a record of the first input and the second input in association with each other; and
a processing module (248) configured to:
determine whether an execution module (244) is triggered for executing the selected operation upon generation of the record in the database; and
load, upon a determination that the execution module (244) is triggered, the selected set of network attributes and the threshold value for each network attribute from the database (250) into a memory (230) prior to execution of the selected operation, wherein the execution module (244) is configured to execute the operation using the selected set of network attributes and the threshold value for each network attribute loaded into the memory (230), wherein the processing module (248) is further configured to generate an output based on the execution of the selected operation.
11. The system (100) as claimed in claim 10, wherein the processing module (248) is further configured to:
fetch, from the database (250), the plurality of network attributes associated with the selected operation and the threshold value corresponding to each network attribute based on the first input; and
control the user device (130) to display the plurality of network attributes and the threshold value corresponding to each network attribute on a display interface (132), wherein the second input is received from the user device (130) in response to the displayed plurality of network attributes and the threshold value corresponding to each network attribute.
12. The system (100) as claimed in claim 11, wherein the processing module (248) is further configured to:
control the user device (130) to display a drop-down list of selectable options corresponding to the one or more operations for receiving the first input;
fetch, from the database (250), the plurality of network attributes associated with the selected operation and the threshold value corresponding to each network attribute based on a selection of the operation from the displayed drop-down list; and
control the user device (130) to display, on the display interface (132), an operation settings panel including a list of the plurality of network attributes associated with the selected operation and one or more of an input field and a stepper field to modify the threshold value corresponding to each network attribute,
wherein the operation settings panel further includes one or more user configurable fields to input, delete, modify, and save the selected set of network attributes associated with the selected operation and the threshold value for each network attribute of the selected set of network attributes.
13. The system (100) as claimed in claim 12, wherein:
the reception module (242) is further configured to receive via the operation settings panel, a modified set of network attributes among the set of network attributes associated with the selected operation and a modified threshold value corresponding to each network attribute among the modified set of network attributes, wherein the modified set of network attributes and the modified threshold value is received when an input operation is performed at the user device (130) via the one or more user configurable fields; and
the database management module (246) is further configured to update in the database (250), the record associated with the selected operation with the modified set of network attributes and the modified threshold value corresponding to each network attribute.
14. The system (100) as claimed in claim 13, wherein:
the record of the selected set of network attributes associated with the selected operation and the threshold value for each network attribute is generated and updated by the database management module (246) via initiation of an Application Programming Interface (API) call request; and
the API call request corresponds to a Hyper Text Transfer Protocol (HTTP) request that transmits the selected set of network attributes and the threshold value for each network attribute from the operation settings panel to the database (250).
15. The system (100) as claimed in claim 10, wherein, to generate the output, the processing module (248) is configured to:
identify a set of nodes among the plurality of nodes (120) violating the threshold value based on the execution of the operation; and
perform one or more of:
control of the user device (130) to display, on the display interface (132), the identified set of nodes violating the threshold value; or
send an alert corresponding to the identified set of nodes violating the threshold value.
16. The system (100) as claimed in claim 10, wherein the operation corresponds to monitoring one or more of Physical Resource Block (PRB) utilization of the plurality of nodes (120), spectral efficiency of the plurality of nodes (120), carrier load balancing of the plurality of nodes (120), Radio Resource Control (RRC) connection of the plurality of nodes (120), performance of the plurality of nodes (120) in the communication network, Frequency Division Duplexing (FDD) to Time Division Duplexing (TDD) load balancing of the plurality of nodes (120), and dead nodes in the communication network.
17. The system (100) as claimed in claim 10, wherein:
the plurality of network attributes corresponds to one or more of network parameters, Key Performance Indicators (KPIs), and KPIs associated with the network parameters; and
the plurality of network attributes include one or more of an average downlink Physical Resource Block (PRB) utilization, an average uplink PRB utilization, throughput, peak number of Radio Resource Control (RRC) connected users, traffic threshold, a percentage of call drops, a percentage of node accessibility, a percentage of node availability, a consistency period of the monitoring the plurality of nodes, a Block Error Rate (BLER), and an average Received Signal Strength Indicator (RSSI).
18. The system (100) as claimed in claim 10, wherein the triggering of the execution module (244) is initiated based on one of a user action, a scheduled task, or an event-driven process.

Documents

Application Documents

# Name Date
1 202421023018-STATEMENT OF UNDERTAKING (FORM 3) [23-03-2024(online)].pdf 2024-03-23
2 202421023018-PROVISIONAL SPECIFICATION [23-03-2024(online)].pdf 2024-03-23
3 202421023018-POWER OF AUTHORITY [23-03-2024(online)].pdf 2024-03-23
4 202421023018-FORM 1 [23-03-2024(online)].pdf 2024-03-23
5 202421023018-DRAWINGS [23-03-2024(online)].pdf 2024-03-23
6 202421023018-DECLARATION OF INVENTORSHIP (FORM 5) [23-03-2024(online)].pdf 2024-03-23
7 202421023018-FORM-26 [12-04-2024(online)].pdf 2024-04-12
8 202421023018-Proof of Right [19-07-2024(online)].pdf 2024-07-19
9 202421023018-Request Letter-Correspondence [13-02-2025(online)].pdf 2025-02-13
10 202421023018-Power of Attorney [13-02-2025(online)].pdf 2025-02-13
11 202421023018-Form 1 (Submitted on date of filing) [13-02-2025(online)].pdf 2025-02-13
12 202421023018-Covering Letter [13-02-2025(online)].pdf 2025-02-13
13 202421023018-FORM 18 [26-02-2025(online)].pdf 2025-02-26
14 202421023018-DRAWING [26-02-2025(online)].pdf 2025-02-26
15 202421023018-CORRESPONDENCE-OTHERS [26-02-2025(online)].pdf 2025-02-26
16 202421023018-COMPLETE SPECIFICATION [26-02-2025(online)].pdf 2025-02-26
17 202421023018-ORIGINAL UR 6(1A) FORM 1-030325.pdf 2025-03-05
18 202421023018-FORM-26 [19-03-2025(online)].pdf 2025-03-19
19 Abstract.jpg 2025-04-17