Abstract: Disclosed is a system (130) and method (400) for identifying network nodes having degraded performance. The method comprises fetching (402) KPI data associated with the network nodes from a first database, and alarm data associated with the network nodes from a second database. Further, a set of KPIs corresponding to each network node is identified from the fetched KPI data (404), and the method further comprises setting (406) a threshold criterion corresponding to each KPI in the identified set of KPIs, and determining (410) a set of nodes violating the threshold criterion. Further, the method comprises mapping (414) the set of nodes with at least one alarm using the alarm data, and identifying (416) a root cause of degradation in performance of the set of nodes based on the mapping. Thereafter, the information related to the identified root cause is transmitted to a user device for remedial actions. FIG. 4
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 IDENTIFYING NETWORK NODES HAVING DEGRADED PERFORMANCE
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 communication networks and systems. More particularly, the present disclosure relates to a system and a method for identifying nodes having degraded performance in a wireless communication network and a root cause of the performance degradation.
BACKGROUND OF THE INVENTION
[0002] The subject matter disclosed in the background section should not be assumed or construed to be prior art merely because 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] In recent years, technological advancement in field of wireless communications, particularly through development phases of the 3rd Generation Partnership Project (3GPP) standards, has significantly shaped importance of Quality of Service (QoS) in modern wireless networks. The QoS with respect to a wireless network corresponds to a set of mechanisms used to manage and prioritize wireless network’s traffic to ensure that certain types of data or applications receive preferential treatment over others.
[0004] Initially, with introduction of 3rd Generation (3G) technologies, such as Universal Mobile Telecommunications System (UMTS), there was a notable shift towards providing enhanced data services alongside traditional voice communications. The shift towards the enhanced data services alongside traditional voice communications led to an increased emphasis on delivering reliable and consistent service quality to meet evolving demands of users.
[0005] Further, with transition of the wireless communication networks to 4th Generation (4G) Long-Term Evolution (LTE) standards, the need for the QoS increased manifold owing to the advancement in smartphones, mobile applications, and multimedia content. The transition led to increased dependence of the users on mobile networks for accessing high-bandwidth services like video streaming, online gaming, and cloud-based applications. Any degradation in network performance, such as dropped calls, slow data speeds, or service disruptions, directly impacted user experience and satisfaction.
[0006] Later, emergence of Internet of Things (IoT) devices and Machine-to-Machine (M2M) communications in the 4G standards underscored a criticality of the QoS in supporting diverse use cases with varying requirements of latency, reliability, and throughput. Furthermore, the demand for the QoS increased further with deployment of 5th Generation (5G) networks.
[0007] In the 5G networks, maintaining the QoS is important for ensuring improved user experience and satisfaction. Each network node within a 5G network plays a crucial role in overall performance and reliability of the 5G network and any degradation in performance of network nodes leads to the service disruptions, the dropped calls, the slow data speeds, and ultimately degraded the user experience.
[0008] Heretofore, network operators relied on manual or semi-automated methods for monitoring the performance of the network nodes. However, with increased complexity and coverage of the wireless communication networks, manual monitoring became impractical and inefficient. Monitoring millions of the network nodes manually consumes significant manpower and resources, and it is challenging to detect performance degradation of the network nodes in real-time before it impacts the user experience.
[0009] Therefore, in order to overcome the aforementioned shortcomings and challenges associated with the manual methods for monitoring the performance of the network nodes, there lies a need for an automated performance monitoring system and a method that can identify network networks having performance degradation and potential issues impacting the performance of the network nodes in real-time.
SUMMARY
[0010] The following embodiments present a simplified summary in order 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.
[0011] In an embodiment, a method for identifying network nodes having degraded performance is described. The method comprises fetching, by a data extraction module, Key Performance Indicator (KPI) data associated with a plurality of nodes in a communication network from a first database, and alarm data associated with the plurality of nodes from a second database. Further, the method comprises identifying, by an identification module from the fetched KPI data, a set of KPIs corresponding to each node of the plurality of nodes, and setting, by a data processing module, a threshold criterion corresponding to each KPI in the identified set of KPIs. The threshold criterion specifies a configurable threshold value for each KPI in the identified set of KPIs. Furthermore, the method comprises determining, by the data processing module from the plurality of nodes, a set of nodes violating the threshold criterion based on a comparison of a real-time measured value of a corresponding KPI in the set of KPIs with a corresponding threshold value for the corresponding KPI, and thereafter mapping, by a data correlation module using the alarm data, the set of nodes with at least one alarm of a plurality of alarms. Furthermore, the method comprises identifying, by the data processing module, a root cause of degradation in performance of the set of nodes based on the mapping.
[0012] In one or more aspects, the at least one alarm corresponds to one of a hardware alarm, an outage alarm, or a software malfunctioning alarm, and the alarm data is fetched from the second database at a configurable time interval window. The alarm data includes active alarm data and historical alarm data associated with the plurality of nodes. Further, the method comprises determining, by the data processing module using the alarm data, whether the at least one alarm is currently active in the set of nodes or has been present in the historical alarm data associated with the set of nodes. Thereafter, the method comprises mapping, by the data correlation module, the set of nodes with one of the hardware alarm, the outage alarm, or the software malfunctioning alarm based on a determination that the at least one alarm is currently active in the set of nodes or has been present in the historical alarm data.
[0013] In an aspect, for determining the set of nodes violating the threshold criterion, the method comprises retrieving, by the data extraction module, the real-time measured value of each KPI in the set of KPIs from the first database, and comparing, by the data processing module, the real-time measured value with the threshold value set for the corresponding KPI to determine a deviation in the real-time measured value with respect to the threshold value set for the corresponding KPI. Further, the method comprises determining, by the data processing module, the set of nodes violating the threshold criterion based on the determined deviation. The violation of the threshold criterion by the set of nodes indicates a degradation in performance of the set of nodes. Further, the method comprises transmitting, by a transceiver, information related to the identified root cause to a user device.
[0014] In one or more aspects, the set of KPIs indicates performance parameters of the plurality of nodes affecting user experience.
[0015] In an aspect, the method comprises determining, by the data processing module using the alarm data, whether an outage alarm is present in one or more neighboring nodes of the set of nodes, and mapping, by the data correlation module, the set of nodes with the outage alarm of the one or more neighboring nodes and each KPI in the set of KPIs based on a determination that the outage alarm is present in the one or more neighboring nodes.
[0016] In an aspect, the method comprises determining, by the data processing module based on the mapping of the set of nodes with the at least one alarm, whether the degradation in the performance of the set of nodes is caused by an alarm on the set of nodes or caused by one or more factors other than the alarm. Further, the method comprises identifying, by the data processing module, the alarm on the set of nodes as the root cause upon a determination that the degradation in the performance of the set of nodes is caused by the alarm on the set of nodes, and assigning, by the data processing module, the set of nodes with the degraded performance to a user of a user device by transmitting information related to the identified root cause to the user device via a transceiver.
[0017] In an aspect, the method further comprises generating, by a data generation module based on one or more predefined Standard Operating Procedures (SOPs), recommendation information including one or more remedial actions for improving the performance of the set of nodes upon a determination that the degradation in the performance of the set of nodes is caused due to the one or more factors other than the alarm. Furthermore, the method comprises transmitting, by the transceiver, the generated recommendation information to the user device.
[0018] In one or more aspects, the one or more remedial actions comprise one or more of adjusting network configuration parameters associated with the set of nodes, restarting the set of nodes, reallocating one or more network resources corresponding to the set of nodes, optimizing cell parameters of one or more neighboring nodes of the set of nodes, and scheduling maintenance for the set of nodes to clear hardware faults.
[0019] In one or more aspects, the first database corresponds to one of a distributed database, a time-series database, or a relational database.
[0020] In one or more aspects, the second database corresponds to a distributed file system, a relational database, a non-relational database, a time-series database.
[0021] In another embodiment, a system for identifying network nodes having degraded performance is described. The system comprises a data extraction module, an identification module, a data processing module, and a data correlation module. The data extraction module is configured to fetch Key Performance Indicator (KPI) data associated with a plurality of nodes in a communication network from a first database, and alarm data associated with the plurality of nodes from a second database. The identification module is configured to identify, from the fetched KPI data, a set of KPIs corresponding to each node of the plurality of nodes. The data processing module is configured to set a threshold criterion corresponding to each KPI in the identified set of KPIs, wherein the threshold criterion specifies a configurable threshold value for each KPI in the identified set of KPIs, and determine, from the plurality of nodes, a set of nodes violating the threshold criterion based on a comparison of a real-time measured value of a corresponding KPI in the set of KPIs with a corresponding threshold value for the corresponding KPI. The data correlation module is configured to map, using the alarm data, the set of nodes with at least one alarm of a plurality of alarms. The data processing module is further configured to identify a root cause of degradation in performance of the set of nodes based on the mapping.
[0022] In one or more aspects, the at least one alarm corresponds to one of a hardware alarm, an outage alarm, or a software malfunctioning alarm, and the alarm data is fetched from the second database at a configurable time interval window. The alarm data includes active alarm data and historical alarm data associated with the plurality of nodes The data processing module is further configured to determine, using the alarm data, whether the at least one alarm is currently active in the set of nodes or has been present in the historical alarm data associated with the set of nodes. The data correlation module is further configured to map the set of nodes with one of the hardware alarm, the outage alarm, or the software malfunctioning alarm based on a determination that the at least one alarm is currently active in the set of nodes or has been present in the historical alarm data.
[0023] In an aspect, the system further comprises a transceiver configured to transmit information related to the identified root cause to a user device. Further, to determine the set of nodes violating the threshold criterion, the data extraction module is configured to retrieve the real-time measured value of each KPI in the set of KPIs from the first database, and the data processing module is configured to compare the real-time measured value with the threshold value set for the corresponding KPI to determine a deviation in the real-time measured value with respect to the threshold value set for the corresponding KPI. The data processing module is further configured to determine the set of nodes violating the threshold criterion based on the determined deviation. The violation of the threshold criterion by the set of nodes indicates a degradation in performance of the set of nodes.
[0024] In an aspect, the data processing module is further configured to determine, using the alarm data, whether an outage alarm is present in one or more neighboring nodes of the set of nodes, and the data correlation module is further configured to map the set of nodes with the outage alarm of the one or more neighboring nodes and each KPI in the set of KPIs based on a determination that the outage alarm is present in the one or more neighboring nodes.
[0025] In an aspect, the data processing module is further configured to determine, based on the mapping of the set of nodes with the at least one alarm, whether the degradation in the performance of the set of nodes is caused by an alarm on the set of nodes or caused by one or more factors other than the alarm. The data processing module is further configured to identify the alarm on the set of nodes as the root cause upon a determination that the degradation in the performance of the set of nodes is caused by the alarm on the set of nodes, and assign the set of nodes with the degraded performance to a user of a user device by transmitting information related to the identified root cause to the user device via a transceiver.
[0026] In one or more aspects, the system further comprises a data generation module configured to generate, based on one or more predefined Standard Operating Procedures (SOPs), recommendation information including one or more remedial actions for improving the performance of the set of nodes upon a determination that the degradation in the performance of the set of nodes is caused due to the one or more factors other than the alarm. The transceiver is configured to transmit the generated recommendation information to the user device.
BRIEF DESCRIPTION OF DRAWINGS
[0027] 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. 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.
[0028] FIG. 1 illustrates a block diagram depicting an example wireless communication network, in accordance with an embodiment of the present disclosure.
[0029] FIG. 2 illustrates a block diagram depicting a system architecture of a base station/gNB of the wireless communication network, in accordance with an embodiment of the present disclosure.
[0030] FIG. 3 illustrates a block diagram depicting a system architecture of a server for identifying network nodes having degraded performance and a root cause of the degradation, in accordance with an embodiment of the present disclosure.
[0031] FIG. 4 illustrates a flowchart depicting a method for identifying the network nodes having degraded performance correlating with alarms and the root cause of the degradation, in accordance with an embodiment of the present disclosure.
[0032] FIG. 5 is a block diagram depicting an example computer system in which embodiments of the present disclosure may be implemented.
DETAILED DESCRIPTION OF THE INVENTION
[0033] 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.
[0034] 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.
[0035] 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.”
[0036] 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, such terms are intended to be inclusive in a manner similar to the term “comprising.”
[0037] 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.
[0038] 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.
[0039] 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, the singular forms "a", "an", and "the" include plural forms unless the context of the invention indicates otherwise.
[0040] 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. 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.
[0041] An object of the present disclosure is to provide a system and a method for identifying network nodes having degraded performance in a communication network and a root cause of the degradation in the performance of the identified nodes.
[0042] Another object of the present disclosure is to provide a system and a method for performing automated correlation of the performance degraded nodes with various factors like performance degraded alarm, neighboring node outage, hardware/software malfunctioning, and the like to identify potential issues of the degradation in performance of the nodes.
[0043] In the disclosure, various embodiments are described using terms used in some 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 easily modified and applied to other communication systems.
[0044] In order to facilitate an understanding of the disclosed invention, a number of terms are defined below.
[0045] A performance degraded alarm refers to an alarm generated by a network element or a Network Management System (NMS) indicating a condition that performance of a network node or a network resource has deteriorated beyond a predefined threshold level but not resulted in a complete failure. Such alarms serve as early warning to a network administrator or a network engineer for enabling prompt attention in order to prevent one or more service disruptions.
[0046] A hardware alarm refers to an alert generated by a network node when a physical component failure or degradation is detected. Such alarm is typically detected and reported by the NMS in compliance with fault management and service management functions.
[0047] A software malfunctioning alarm refers to an issue in operating software or a firmware of the network node that may impact the performance or stability of the network node.
[0048] An “outage node” or “node outage” refers to a node that includes one or more outage alarms. An outage alarm signifies a total loss of service at a specific network node. The outage alarms are critical as they indicate complete service disruption at any node in the communication network, requiring immediate remediation.
[0049] The following description provides specific details of certain aspects of the disclosure illustrated in the drawings to provide a thorough understanding of those aspects. It should be recognized, however, that the present disclosure can be reflected in additional aspects and the disclosure may be practiced without some of the details in the following description.
[0050] 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.
[0051] FIG. 1 illustrates a block diagram depicting an example wireless communication network 100, in accordance with an embodiment of the present disclosure. The embodiment of the wireless communication network 100 shown in FIG. 1 is for illustration only. Other embodiments of the wireless communication network 100 may be used without departing from the scope of this disclosure.
[0052] As shown in FIG. 1, the wireless communication network 100 includes a plurality of gNodeB (gNBs) (hereinafter interchangeable referred to as “base stations”, “nodes”, or “network nodes”) including a gNB 101, a gNB 102, a gNB 103, a gNB 104, a gNB 105, and a gNB 106. The gNB 101 communicates with the gNB 102, the gNB 103, the gNB 104, the gNB 105, and the gNB 106. The gNB 101 also communicates with a network 110, such as the Internet, a proprietary Internet Protocol (IP) network, or other data network. The gNB 101 also communicates with a user device and a server 130. The server 130 is configured to identify base stations among the gNB 101 through gNB 106 having degraded performance and also a root cause of the degradation in the performance of identified base stations having the degraded performance.
[0053] The term “base station” may refer to any component (or collection of components) configured to provide wireless access to a network, such as Transmit Point (TP), Transmit-Receive Point (TRP), an Evolved Base Station (eNodeB or eNB), a 5G/NR base station (gNB), a macrocell, a femtocell, a Wi-Fi Access Point (AP), or other wirelessly enabled devices. The base stations may provide wireless access in accordance with wireless communication protocols, e.g., 5G/NR 3GPP New Radio interface/access (NR), LTE, LTE-A, High Speed Packet Access (HSPA), Wi-Fi 802.11a/b/g/n/ac, etc. For the sake of convenience, the terms “base stations” “nodes” and “gNBs” are used interchangeably in the present disclosure to refer to network infrastructure components that provide wireless access to remote terminals.
[0054] The user device 120 corresponds to a device used by a network operation team or an end user. Further, depending on the network type, the term “user device 120” may refer to any component such as “mobile station,” “subscriber station,” “remote terminal,” “wireless terminal,” or “receive point,”. The user device 120 includes a user interface to facilitate display of information related to the identified root cause of the degradation in the identified base stations and a communication unit to facilitate communication between the user device 120 and the server 130 via the network 110.
[0055] Although FIG. 1 illustrates one example of the wireless communication network 100, various changes may be made to FIG. 1. For example, the wireless communication network 100 may include any number of gNBs in any suitable arrangement. Further, each of the gNBs 102-106 may communicate directly with the server 130. Furthermore, the gNBs 101 through 106 may provide access to other or additional external networks, such as external telephone networks or other types of data networks. Furthermore, the wireless communication network 100 may include one or more gateways located on the network 110 to facilitate network communications between the user device 160 and the server 130.
[0056] FIG. 2 illustrates a block diagram depicting a system architecture of the base station/gNB 102 of the wireless communication network 100, in accordance with an embodiment of the present disclosure. The embodiment of the gNB 102 as shown in FIG. 2 is for illustration only, and the gNBs 101, 103, 104, 105, and 106 of FIG. 1 may have same or similar configuration. However, gNBs come in a wide variety of configurations, and FIG. 2 does not limit the scope of the present disclosure to any particular implementation of the gNB.
[0057] As shown in FIG. 2, the gNB 102 may include components for bi-directional voice and data communications including components for transmitting and receiving communications, a processor 202, a memory 204, a network communication manager 206, a transceiver 208, one or more antennas 210 (hereinafter also referred to as antennas 210”), and a communication interface 212. The transceiver 208 may include a transmit processing circuitry, and a receiver processing circuitry. These components may be in electronic communication via one or more buses (e.g., communication bus 216).
[0058] The processor 202 may include one or more processors or other processing devices that control the overall operation of the gNB 102. For example, the processor 202 may control reception of forward or downlink channel signals and the transmission of reverse or uplink channel signals by the receiver processing circuitry and the transmit processing circuitry of the transceiver 208, in accordance with well-known principles or concept. The processor 202 may support additional functions as well, such as more advanced wireless communication functions.
[0059] The processor 202 is configured to execute programs and other processes stored in the memory 204. The processor 202 is also configured to store data into the memory 204 or fetch data out of the memory 204 as required by an executing process. The processor 202 may also be coupled to the network communication manager 206 that may allow the gNB 102 to communicate with other devices or systems over the network. The network communication manager 206 may support communications over any suitable wired or wireless connection(s) and manage communications with a core network 214 (e.g., via one or more wired backhaul links). For example, the network communications manager 206 may manage the transfer of data communications for client devices, such as User Equipment’s (UEs) and the user device 120.
[0060] The memory 204 is coupled to the processor 202. A part of the memory 204 may include a RAM, and another part of the memory 204 may include a Flash memory or other ROM.
[0061] The transceiver 208 may receive, from the antennas 210, incoming Radio Frequency (RF) signals, such as signals transmitted by UEs in the communication network 100. The transceiver 208 may down-convert the incoming RF signals to generate Intermediate Frequency (IF) or baseband signals. The IF or baseband signals may be sent to a receiver processing circuitry, which generates processed baseband signals by filtering, decoding, and/or digitizing the baseband or IF signals. The receiver processing circuitry may transmit the processed baseband signals to the processor 202 for further processing. The transmit processing circuitry may receive analog or digital data from the processor 202 and may encode, multiplex, and/or digitize the outgoing baseband data to generate processed baseband or IF signals. The transceiver 208 may further receive the outgoing processed baseband or IF signals from the transmit processing circuitry and up-converts the baseband or IF signals to RF signals that are transmitted via the antennas 210.
[0062] The communication interface 212 may be configured to enable the base station 102 to communicate with various entities of the wireless network 100 (such as the user device 120, the server 130, and a core network 214, and in some scenarios external user device) via the network 110. Examples of the communication interface 212 may include, but are not limited to, a modem, a network interface such as an Ethernet card, a communication port, and/or a Personal Computer Memory Card International Association (PCMCIA) slot and card, an antenna, a radio frequency (RF) transceiver, one or more amplifiers, a tuner, one or more oscillators, a digital signal processor, a Coder-Decoder (CODEC) chipset, a Subscriber Identity Module (SIM) card, and a local buffer circuit. It will be apparent to a person of ordinary skill in the art that the communication interface 212 may include any device and/or apparatus capable of providing wireless or wired communications between the base station 102 and various other entities of the wireless communication network 100.
[0063] Although FIG. 2 illustrates one example of gNB 102, various changes may be made to FIG. 2. For example, the gNB 102 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.
[0064] FIG. 3 illustrates a block diagram depicting a system architecture of the server 130, in accordance with an embodiment of the present disclosure. The embodiment of the server 130 as shown in FIG. 3 is for illustration only. However, the server 130 may come in a wide variety of configurations, and FIG. 3 does not limit the scope of the present disclosure to any particular implementation of the server 130.
[0065] As shown in FIG. 3, the server 130 includes one or more processors 310 (hereinafter also referred to as “processor 310”), a memory 320, a network communication manager 330, an interface(s) 340, a processing unit(s)/modules(s) 360, a transceiver 370, a console host 380, a first database 390 (interchangeably referred to as “database 390”), and a second database 395 (interchangeably referred to as “database 395”). These components may be in electronic communication via one or more buses (e.g., communication bus 392).
[0066] The processor 310 may include various processing circuitry and communicates with the memory 320, the network communication manager 330, the interface 340, and the database 390. The processor 310 is configured to execute instructions stored in the memory 320 and to perform various processes. The processor 310 may include an intelligent hardware device including a general-purpose processor, such as, for example, and without limitation, a Central Processing Unit (CPU), an Application Processor (AP), a dedicated processor, or the like, a graphics-only processing unit such as a Graphics Processing Unit (GPU), a microcontroller, a Field-Programmable Gate Array (FPGA), a programmable logic device, a discrete hardware component, or any combination thereof. In some cases, the processor 310 may be configured to operate a memory array using a memory controller. In some cases, a memory controller may be integrated into the processor 310. The processor 310 may be configured to execute computer-readable instructions stored in a memory (e.g., the memory 320) to cause the server 130 to perform various functions (e.g., identifying base stations among the gNB 101 through gNB 106 having the degraded performance and identifying the root cause of the degradation in the performance of identified base stations having the degraded performance).
[0067] The memory 320 stores a set of instructions required by the processor 310 of the server 130 for controlling its overall operations. The memory 320 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 320 may, in some examples, be considered 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 as the memory 320 is non-movable. In some examples, the memory 320 may be configured to store larger amounts of information. 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 320 may be an internal storage unit or an external storage unit of the server 130, cloud storage, or any other type of external storage.
[0068] More specifically, the memory 320 may store computer-readable instructions 320A including instructions that, when executed by a processor (e.g., the processor 310) cause the server 130 to perform various functions described herein. In some cases, the memory 320 may contain, among other things, a Basic Input Output System (BIOS) which may control basic hardware or software operation such as the interaction with peripheral components or devices.
[0069] The network communication manager 330 may manage communications with the base stations, the core network 214, or the user device 120 (e.g., via one or more wired backhaul links). For example, the network communications manager 330 may manage the transfer of data communications for the base stations (101 through 106) and the user device 120. The network communication manager 330 may include an electronic circuit specific to a standard that enables wired or wireless communication. Further, the network communication manager 330 is configured for communicating with external devices via one or more networks.
[0070] The interface 340 may include suitable logic, circuitry, a variety of interfaces, and/or codes that may be configured to receive input(s) and present (or display) output(s) on a display interface or a Graphical User Interface (GUI). The variety of interfaces may include interfaces for data input and output devices, referred to as I/O devices, storage devices, and the like. For example, the I/O interface may have an input interface and an output interface. The interface 340 may facilitate communication of the server 130 with various devices connected to it. The interface 340 may also provide a communication pathway for one or more components of the server 130. Examples of such components include, but are not limited to, the processing module(s) 360 and the databases 390 and 395.
[0071] In an embodiment, the processing module(s) 360 may be implemented as a combination of hardware and programming (for example, programmable instructions) to implement one or more functionalities of the processing module(s) 360. In non-limiting examples, described herein, such combinations of hardware and programming may be implemented in several different ways. For example, the programming for the processing modules(s) 360 may be processor-executable instructions stored on a non-transitory machine-readable storage medium and the hardware for the processor 310 may comprise a processing resource (for example, one or more processors), to execute such instructions. In the present examples, the machine-readable storage medium may store instructions that, when executed by the processing resource, implement the processing module(s) 360. In such examples, the server 130 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 130 and the processing resource. In other examples, the processing module(s) 360 may be implemented using an electronic circuitry.
[0072] In one or more embodiments, the processing module(s) 360 may include one or more units/modules selected from any of a data extraction module 352, an identification module 354, a data processing module 356, a data correlation module 358, a data generation module 362, and other units/modules 364 (not shown). The other units/modules 364 may include, but are not limited to, an analytics module, a monitoring module, a report generation module, and the like.
[0073] In an embodiment, the processor 310, using the data extraction module 352, is configured to fetch Key Performance Indicator (KPI) data associated with the nodes 101-106 in the wireless communication network 100 from the first database 390, and alarm data associated with the nodes 101-106 from the second database 395. The data extraction module 352 is configured to fetch the alarm data from the second database at a configurable time interval window. The alarm data may include active alarm data and historical alarm data associated with the nodes in the wireless communication network. The active alarm data may include real time alerts generated by the nodes and the historical alarm data may include past alarm records along with a timestamp of generation of the alerts in the past.
[0074] In an embodiment, the processor 310, using the identification module 354, is configured to identify a set of KPIs corresponding to each node among the nodes 101-106 from the KPI data fetched from the first database 390. The set of KPIs indicates performance parameters of the plurality of nodes affecting Quality of Service (QoS) and the user experience. In a non-limiting example, the set of KPIs may include, but not limited to, a packet loss, a latency, call drop rates, accessibility, overutilization of the nodes, resource contention such as CPU and memory congestion. The packet loss may refer to a percentage of data packets that fail to reach their destination in the wireless communication network 100. The laten
[0075] cy may refer to a time delay between a transmission and reception of the data packets. The call drop rates may correspond to a frequency at which active call are unexpectedly terminated due to network issues and the resource contention may refer to a competitive management between limited system resources. Further, the overutilization of the nodes may correspond to a state whether the nodes 101-106 may operate beyond their optimal capacity.
[0076] In an embodiment, the processor 310, using the data processing module 356, is configured to set a threshold criterion corresponding to each KPI in the identified set of KPIs. The threshold criterion specifies a configurable threshold value for each KPI in the identified set of KPIs. In a non-liming example, configurable threshold values differ from one KPI to other KPIs. For instance, if any KPI is related to a call drop, the data processing module 356 may set the threshold criterion for cells as greater than 3% of the call drop. Similarly, in another limiting example, the data processing module 356 may set the threshold criterion for accessibility or availability as less than 99%, since 100% may be a desired value. In particular, the threshold values are not hardcoded and can be changed depending upon the system requirements.
[0077] Further, the processor 310, using the data processing module 356, determine a set of nodes violating the threshold criterion based on a comparison of a real-time measured value of a corresponding KPI in the set of KPIs with a corresponding threshold value for the corresponding KPI. The set of nodes violating the threshold is determined by the data processing module 356 from the nodes 101-106 in the wireless communication network 100. In a non-limiting example, for the KPI related to call drop rates, the data processing module 356 may compare the real-time measured call drop rates for the nodes 101-106 with the predefined threshold of 3% (i.e., the set threshold criterion). If the real-time call drop rate for any of these nodes exceeds 3%, the data processing module 356 determines or designates such nodes as the set of nodes violating the threshold criterion.
[0078] Upon determining the set of nodes violating the threshold criterion, the processor 310, using the data correlation module 358, is configured to map the set of nodes with one or more alarms in the fetched alarm data. The one or more alarms corresponds to one of, but not limited to, the hardware alarm, the outage alarm, or the software malfunctioning alarm. Furthermore, the processor 310, using the data processing module 356, is configured to identify the root cause of the degradation in the performance of the set of nodes based on the mapping of the set of nodes with the one or more alarms in the fetched alarm data.
[0079] The processor 310, using the transceiver 370, is further configured to transmit information related to the identified root cause to the user device 120. A detailed operational steps and functionalities of the processor 310 and the modules 360 is explained below with reference to FIG. 4.
[0080] The transceiver 370 may receive incoming RF signals, such as signals transmitted by base stations (101-106) and the user device 120 in the wireless communication network 100. The transceiver 303 may down-convert the incoming RF signals to generate the IF or baseband signals which may be sent to the receiver processing circuitry. The receiver processing circuitry may transmit the processed baseband signals to the processor 310 for further processing. The transmit processing circuitry may receive analog or digital data from the processor 310 and may encode, multiplex, and/or digitize the outgoing baseband data to generate processed baseband or IF signals. The transceiver 370 may further receive the outgoing processed baseband or IF signals from the transmit processing circuitry and up-converts the baseband or IF signals to RF signals that may be transmitted to the user device 120 and the base stations (101-106).
[0081] The console host 380 may include suitable logic, circuitry, interfaces, and/or codes that may be configured to enable the interface 340 to receive input(s) and/or render output(s). In some aspects of the present disclosure, the console host 380 may include suitable logic, instructions, and/or codes for executing various operations of one or more computer executable applications to host a console on an external user device, by way of which a user can trigger the server 130 to identify the nodes with the degraded performance correlating with alarms.
[0082] The first database 390 may be managed by the processor 310 and configured to store the KPI data associated with all the nodes in the wireless communication network 100. The KPI data may be timestamped as the KPIs are logged over time and may be analyzed by the processor 310 for determining trends related to the KPIs. The first database may correspond, but not limited to, a distributed database, a time-series database, or a relational database.
[0083] The second database 395 may be managed by the processor 310 and configured to store the alarm data including, but not limited to, the active alarm data and the historical alarm data. The alarm data may further include, but not limited to, hardware alarm data, software malfunctioning alarm data, etc... The second database 395 may correspond, but not limited to, a distributed file system, the relational database, a non-relational database, or the time-series database.
[0084] Furthermore, each of the databases 390 and 395 may be configured to handle data comprising tables dedicated for storing raw measurement data and results of the monitoring process. In an embodiment, the first database 390 and the second database 395 may act as external databases for the server 130.
[0085] Although FIG. 3 illustrates one example of the server 130, various changes may be made to FIG. 3. Further, the server 130 may include any number of components in addition to those shown in FIG. 3, without deviating from the scope of the present disclosure. Further, various components in FIG. 3 may be combined, further subdivided, or omitted and additional components may be added according to particular needs. For example, in some aspects of the present disclosure, the server 130 may be coupled to an external database that provides data storage space to the server 130.
[0086] In an alternate embodiment, each module of the processing module(s) 360 (i.e., the data extraction module 352, the identification module 354, the data processing module 356, the data correlation module 358, the data generation module 362) is configured to independently perform various operations of the processor 310, as described herein, without deviating from the scope of the present disclosure. Additionally, different modules shown in FIG. 3 may be split into two or more modules each operating independently in communication with one another, optionally in a distributive manner, with shared responsibilities. Furthermore, multiple instances of the modules may be implemented for identifying the root cause of the degradation in the performance of the set of nodes or multiple modules can be combined into a single module to perform all corresponding functions described herein.
[0087] FIG. 4 illustrates a flowchart depicting a method 400 for identifying the network nodes having the degraded performance correlating with alarms and the root cause of the degradation, in accordance with an exemplary embodiment of the present disclosure. The method 400 comprises a series of operation steps indicated by blocks 402 through 422. Example blocks 402 through 422 of the method 400 are performed by one or more components of the server 130 as disclosed in FIG. 3, for identifying the network nodes having the degraded performance correlating with alarms and the root cause of the degradation. Although the method 400 shows the example blocks of operation steps 402 through 422, in some embodiments, the method 400 may include additional steps, fewer steps or steps in different order than those depicted in FIG. 4. In other embodiments, the steps 402 through 422 may be combined or may be performed in parallel. The method 400 starts at block 402.
[0088] At block 402, the data extraction module 352 fetches the KPI data associated with the nodes 101-106 in the wireless communication network 100 from the first database 390, and fetches the alarm data associated with the nodes 101-106 from the second database 395.
[0089] At block 404, the identification module 354 identifies, corresponding to each node, the set of KPIs from the KPI data affecting the QoS and the user experience.
[0090] At block 406, the data processing module 356 sets the threshold criterion corresponding to corresponding to each KPI in the identified set of KPIs. Once the threshold criterion corresponding to the each KPI is set, the flow of the method 400 proceeds to block 408.
[0091] At block 408, the processor 310, using the data processing module 356, monitors the performance of each of the nodes 101-106 in the wireless communication network 100 with respect to the set threshold criterion and compares real-time measured value of each KPI in the set of identified KPIs with the threshold value set for the corresponding KPI to determine a deviation in the real-time measured value with respect to the threshold value set for the corresponding KPI. Before perming the comparison, the processor 310 may retrieve, using the data extraction module 352, the real-time measured value of each KPI in the set of identified KPIs from the first database 390.
[0092] At block 410, the processor 310, using the data processing module 356, determines the set of nodes (i.e., one or more nodes among the nodes 101-106) violating the threshold criterion based on the determined deviation. The violation of the threshold criterion by the set of nodes indicates a degradation in performance of the determined set of nodes.
[0093] At block 412, the processor 310, using the data processing module 356, determining whether any alarm is currently active in the determined set of nodes or has been present in the historical alarm data associated with the determined set of nodes determines. In particular, the data processing module 356 checks whether any active/history alarm is corelated with the performance degradation of the determined set of nodes. If it is determined that the active/history alarm is correlated with the determined set of nodes, the flow of the method 400 proceeds to block 414. However, if (at block 412) it is determined that any active/history alarm is not correlated with the performance degradation of the determined set of nodes, the flow of the method 400 again goes back to block 408 and operations of blocks 408 through 412 is repeated until a result of the determination at block 412 becomes yes.
[0094] At block 414, the processor 310, using the data correlation module 358, maps the determined set of nodes with one or more alarms in the fetched alarm data. In particular, the data correlation module 358 maps the determined set of nodes with the hardware alarms, the outage alarm, or the software malfunctioning alarms. In some aspects, for performing the mapping process, the processor 310 using the data processing module 356 may analyze the alarm data to determine whether any outage alarm is present in one or more neighboring nodes of the determined set of nodes. If it is determined that the outage alarm is present in the one or more neighboring nodes of the determined set of nodes, the processor 310, using the data correlation module 358, may map the determined set of nodes with the outage alarm of the one or more neighboring nodes and each KPI in the identified set of KPIs.
[0095] For example, if a particular node (let say node 101 among the nodes 101-106) exhibits a high call drop rate (greater than 3%) and a low accessibility rate (let say below 99%), the data correlation module 358 may check whether any outage alarm is triggered in a neighboring node of the node 101. If it is determined that the outage alarm exists at the neighboring node of the node 101, the high call drop rate and the low accessibility rate may be attributed to the outage in the neighboring node. Similarly, if multiple nodes among the nodes 101-106 shows an increased packet loss and latency, the data correlation module 358 may check for the hardware alarms in a network component, for example, a malfunctioning of a network device or a congested backhaul link.
[0096] At block 416, the processor 310, using the data processing module 356, identifies the root cause of the degradation in the performance of the determined set of nodes based on the mapping of the determined set of nodes with the alarms in the fetched alarm data. In a non-limiting example, the root cause of the degradation may include, but are not limited to, hardware failures, software malfunctions, network congestion, interference, and the resource contention. Upon identifying the root cause of the degradation, the flow of the method 400 proceeds to block 418.
[0097] At block 418, the processor 310 using the data processing module 356, determines whether the degradation in the performance of the determined set of nodes is caused by an alarm on the set of nodes or caused due to factors other than the alarm. The determination at block 418 is performed based on the mapping of the determined set of nodes with the alarms included in the fetched alarm data. If it is determined at block 418 that the degradation in the performance of the determined set of nodes is caused by the alarm on the determined set of nodes, the flow of the method 400 proceeds to block 420.
[0098] At block 420, the processor 304 identifies, using the data processing module 356, the alarm on the set of nodes as the root cause of the performance degradation of the determined set of nodes. Accordingly, the processor 310 using the data processing module 356 assigns the determined set of nodes with the degraded performance to a user of the user device 120. The determined set of nodes with the degraded performance is assigned to the user of the user device 120 by transmitting the information related to the identified root cause to the user device 120 via the transceiver 370.
[0099] However, at block 418, if it is determined that the degradation in the performance of the determined set of nodes is caused due to the factors other than the alarm, the flow of the method 400 proceeds to block 422.
[0100] At block 422, the processor 310, using the data generation module 362, generates recommendation information including one or more remedial actions for improving the performance of the determined set of nodes. The recommendation information is generated by the data generation module 362 based on one or more predefined Standard Operating Procedures (SOPs). Further, the processor 310 transmits, using the transceiver 370, the generated recommendation information to the user device 120.
[0101] In one or more embodiments, the one or more remedial actions in the recommendation information may include, but not limited to, adjusting network configuration parameters associated with the determined set of nodes, restarting the determined set of nodes, reallocating one or more network resources corresponding to the determined set of nodes, optimizing cell parameters of one or more neighboring nodes of the determined set of nodes, and scheduling maintenance for the determined set of nodes to clear hardware faults.
[0102] FIG. 5 depicts a block diagram of an example computer system 500 in which embodiments of the present disclosure may be implemented. The computer system 500 can be any commercially available and well-known computer capable of performing the functions described herein. The computer system 500 may be any type of computer, including a server, a web server, a cloud server, etc. The one or more components of the computer system 500 may perform the operational steps of the method 400 and the functions similar to the components of the server 130 as disclosed herein with respect to FIG. 2 through FIG. 4.
[0103] The computer system 500 includes one or more processors (also called central processing units, or CPUs), such as a processor 504. The processor 504 is connected to a communication infrastructure 502, such as a communication bus. In some embodiments, the processor 504 can simultaneously operate multiple computing threads.
[0104] The computer system 500 also includes a primary or main memory 506, such as Random Access Memory (RAM). The main memory 506 has stored therein control logic 524 (computer software), and data.
[0105] The computer system 500 also includes one or more secondary storage devices 508. The secondary storage devices 508 include, for example, a hard disk drive 510 and/or a removable storage device or drive 512, as well as other types of storage devices, such as memory cards and memory sticks. For instance, the computer system 500 may include an industry standard interface, such a universal serial bus (USB) interface for interfacing with devices such as a memory stick. The removable storage drive 512 represents a floppy disk drive, a magnetic tape drive, a compact disk drive, an optical storage device, tape backup, etc.
[0106] The removable storage drive 512 interacts with a removable storage unit 514. The removable storage unit 514 includes a computer useable or readable storage medium 520 having stored therein computer software 522 (control logic) and/or data. The removable storage unit 514 represents a floppy disk, magnetic tape, compact disk, DVD, optical storage disk, or any other computer data storage device. The removable storage drive 512 reads from and/or writes to removable storage unit 514 in a well-known manner.
[0107] The computer system 500 may also include input interface/output interface/display devices 518, such as monitors, keyboards, pointing devices, etc.
[0108] The computer system 500 further includes a communication interface or a network interface 516. The communication interface 516 enables the computer system 500 to communicate with remote systems and devices. For example, communication interface 516 allows the computer system 500 to communicate over communication networks or mediums 528, such as LANs, WANs, the Internet, etc. The network interface 516 may interface with remote sites or networks via wired or wireless connections.
[0109] Control logic 526 may be transmitted to and from the computer system 500 via the communication medium 528. More particularly, the computer system 500 may receive and transmit carrier waves (electromagnetic signals) modulated with the control logic 526 via the communication medium 528. Further, one or more components of the computer system 500 (for example, the processor 504, the main memory 506, the secondary storage devices 508, etc..) as shown in FIG. 5 may be further connected with the communication infrastructure 502 via a communication interface 530.
[0110] Any apparatus or manufacture comprising a computer useable or readable medium having control logic (software) stored therein is referred to herein as a computer program product or program storage device. This includes, but is not limited to, the computer system 500, the main memory 505, the secondary storage devices 509, and the removable storage unit 515. Such computer program products, having control logic stored therein that, when executed by one or more data processing devices, cause such data processing devices to operate as described herein, represent embodiments of the disclosure.
[0111] In particular, 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.
[0112] 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 320) 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).
[0113] 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 310) 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.
[0114] Now, referring to the technical abilities and advantageous effect of the present disclosure, the operational advantages provided by one or more embodiments include identification of the root cause of degradation in the performance of one or more nodes in the wireless communication network 100, thus, enabling the operations team to attend performance degraded nodes timely by rectifying faults before receipt of complaints by users/customers.
[0115] A further potential advantage of the one or more embodiments disclosed herein include performing automated correlation of the performance degraded nodes with various factors like the hardware alarms, outage alarms, neighboring node outage, hardware/software malfunctioning alarms, and the like. The correlation helps in generating information indicating the root cause of the degradation in the performance of the violator nodes, thus, helps an operation team to fix issues in the performance degraded nodes quickly.
[0116] Furthermore, the method and system disclosed herein generates the recommendation information include the recommendation for the remedial actions associated with the nodes having the degraded performance. On the basis of the suggested remedial actions, the operations team can attend the performance degraded nodes timely by resolving the faults before the receipt of complaints from the users/customers.
[0117] 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.
[0118] 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.
[0119] 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
[0120] 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 - Wireless communication network
101-106 - GNodeB (gNB)/Network nodes/base stations/nodes
110 - Network
120 - User device
130 - Server
102 - System architecture of base station/gNB
202 - Processor
204 - Memory
206 - Network communication manager
208 - Transceiver
210 - Antenna(s)
212 - Communication interface
214 - Core network
216 - Communication bus
310 - Processor
320 - Memory
320A - Instructions
330 - Network communication manager
340 - Interface(s)
360 - Processing unit(s)/modules(s)
352 - Data extraction module
354 - Identification module
356 - Data processing module
358 - Data correlation module
362 - Data generation module
364 - Other units/modules
370 - Transceiver
380 – Console host
390 - First Database
395 - Second Database
392 - Communication bus
400 - Method for identifying the network nodes having the degraded performance correlating with alarms and the root cause of the degradation
402-422 - Steps of method 400
500 - Computer system
502 - Communication infrastructure
504 – Processor of computer system
506 - Memory
508 - Secondary storage devices
510 - Hard disk drive
512 - Removable storage device
514 - Removable storage unit
516 - Communication/Network interface
518 - Input interface/output interface/display devices
520 - Readable storage medium
522 - Software
524 - Control Logic of main memory
526 - Control logic
528 - Communication networks or mediums
530 - Communication interface
,CLAIMS:We Claim:
1. A method (400) for identifying network nodes having degraded performance, the method comprising:
fetching, by a data extraction module (352), Key Performance Indicator (KPI) data associated with a plurality of nodes (101-106) in a communication network from a first database (390), and alarm data associated with the plurality of nodes (101-106) from a second database (395);
identifying, by an identification module (354) from the fetched KPI data, a set of KPIs corresponding to each node of the plurality of nodes (101-106);
setting, by a data processing module (356), a threshold criterion corresponding to each KPI in the identified set of KPIs, wherein the threshold criterion specifies a configurable threshold value for each KPI in the identified set of KPIs;
determining, by the data processing module (356) from the plurality of nodes (101-106), a set of nodes violating the threshold criterion based on a comparison of a real-time measured value of a corresponding KPI in the set of KPIs with a corresponding threshold value for the corresponding KPI;
mapping, by a data correlation module (358) using the alarm data, the set of nodes with at least one alarm of a plurality of alarms; and
identifying, by the data processing module (356), a root cause of degradation in performance of the set of nodes based on the mapping.
2. The method (400) as claimed in claim 1, wherein
the at least one alarm corresponds to one of a hardware alarm, an outage alarm, or a software malfunctioning alarm,
the alarm data is fetched from the second database (395) at a configurable time interval window,
the alarm data includes active alarm data and historical alarm data associated with the plurality of nodes (101-106), and
the method further comprises:
determining, by the data processing module (356) using the alarm data, whether the at least one alarm is currently active in the set of nodes or has been present in the historical alarm data associated with the set of nodes; and
mapping, by the data correlation module (358), the set of nodes with one of the hardware alarm, the outage alarm, or the software malfunctioning alarm based on a determination that the at least one alarm is currently active in the set of nodes or has been present in the historical alarm data.
3. The method (400) as claimed in claim 1,
wherein, for determining the set of nodes violating the threshold criterion, the method comprises:
retrieving, by the data extraction module (352), the real-time measured value of each KPI in the set of KPIs from the first database (390);
comparing, by the data processing module (356), the real-time measured value with the threshold value set for the corresponding KPI to determine a deviation in the real-time measured value with respect to the threshold value set for the corresponding KPI; and
determining, by the data processing module (356), the set of nodes violating the threshold criterion based on the determined deviation, wherein the violation of the threshold criterion by the set of nodes indicates a degradation in performance of the set of nodes, and
wherein the method further comprises transmitting, by a transceiver (370), information related to the identified root cause to a user device (120).
4. The method (400) as claimed in claim 1, wherein the set of KPIs indicates performance parameters of the plurality of nodes (101-106) affecting user experience.
5. The method (400) as claimed in claim 1, further comprising:
determining, by the data processing module (356) using the alarm data, whether an outage alarm is present in one or more neighboring nodes of the set of nodes; and
mapping, by the data correlation module (358), the set of nodes with the outage alarm of the one or more neighboring nodes and each KPI in the set of KPIs based on a determination that the outage alarm is present in the one or more neighboring nodes.
6. The method (400) as claimed in claim 1, further comprising:
determining, by the data processing module (356) based on the mapping of the set of nodes with the at least one alarm, whether the degradation in the performance of the set of nodes is caused by an alarm on the set of nodes or caused by one or more factors other than the alarm;
identifying, by the data processing module (356), the alarm on the set of nodes as the root cause upon a determination that the degradation in the performance of the set of nodes is caused by the alarm on the set of nodes; and
assigning, by the data processing module (356), the set of nodes with the degraded performance to a user of a user device (120) by transmitting information related to the identified root cause to the user device (120) via a transceiver (370).
7. The method (400) as claimed in claim 6, further comprising:
generating, by a data generation module (362) based on one or more predefined Standard Operating Procedures (SOPs), recommendation information including one or more remedial actions for improving the performance of the set of nodes upon a determination that the degradation in the performance of the set of nodes is caused due to the one or more factors other than the alarm; and
transmitting, by the transceiver (370), the generated recommendation information to the user device (120).
8. The method (400) as claimed in claim 7, wherein the one or more remedial actions comprise one or more of:
adjusting network configuration parameters associated with the set of nodes;
restarting the set of nodes;
reallocating one or more network resources corresponding to the set of nodes;
optimizing cell parameters of one or more neighboring nodes of the set of nodes; and
scheduling maintenance for the set of nodes to clear hardware faults.
9. The method (400) as claimed in claim 1, wherein the first database (390) corresponds to one of a distributed database, a time-series database, or a relational database.
10. The method (400) as claimed in claim 1, wherein the second database (395) corresponds to a distributed file system, a relational database, a non-relational database, a time-series database.
11. A system (130) for identifying network nodes having degraded performance, the system comprising:
a data extraction module (352) configured to fetch Key Performance Indicator (KPI) data associated with a plurality of nodes (101-106) in a communication network from a first database (390), and alarm data associated with the plurality of nodes (101-106) from a second database (395);
an identification module (354) configured to identify, from the fetched KPI data, a set of KPIs corresponding to each node of the plurality of nodes (101-106);
a data processing module (356) configured to:
set a threshold criterion corresponding to each KPI in the identified set of KPIs, wherein the threshold criterion specifies a configurable threshold value for each KPI in the identified set of KPIs; and
determine, from the plurality of nodes (101-106), a set of nodes violating the threshold criterion based on a comparison of a real-time measured value of a corresponding KPI in the set of KPIs with a corresponding threshold value for the corresponding KPI; and
a data correlation module (358) configured to map, using the alarm data, the set of nodes with at least one alarm of a plurality of alarms, wherein the data processing module (356) is further configured to identify a root cause of degradation in performance of the set of nodes based on the mapping.
12. The system (130) as claimed in claim 11, wherein
the at least one alarm corresponds to one of a hardware alarm, an outage alarm, or a software malfunctioning alarm,
the alarm data is fetched from the second database (395) at a configurable time interval window,
the alarm data includes active alarm data and historical alarm data associated with the plurality of nodes (101-106),
the data processing module (356) is further configured to determine, using the alarm data, whether the at least one alarm is currently active in the set of nodes or has been present in the historical alarm data associated with the set of nodes, and
the data correlation module (358) is further configured to map the set of nodes with one of the hardware alarm, the outage alarm, or the software malfunctioning alarm based on a determination that the at least one alarm is currently active in the set of nodes or has been present in the historical alarm data.
13. The system (130) as claimed in claim 11, further comprising a transceiver (370) configured to transmit information related to the identified root cause to a user device (120), wherein, to determine the set of nodes violating the threshold criterion, the data extraction module (352) is configured to retrieve the real-time measured value of each KPI in the set of KPIs from the first database (390), and the data processing module (356) is configured to:
compare the real-time measured value with the threshold value set for the corresponding KPI to determine a deviation in the real-time measured value with respect to the threshold value set for the corresponding KPI; and
determine the set of nodes violating the threshold criterion based on the determined deviation, wherein the violation of the threshold criterion by the set of nodes indicates a degradation in performance of the set of nodes.
14. The system (130) as claimed in claim 11, wherein the set of KPIs indicates performance parameters of the plurality of nodes (101-106) affecting user experience.
15. The system (130) as claimed in claim 11, wherein
the data processing module (356) is further configured to determine, using the alarm data, whether an outage alarm is present in one or more neighboring nodes of the set of nodes; and
the data correlation module (358) is further configured to map the set of nodes with the outage alarm of the one or more neighboring nodes and each KPI in the set of KPIs based on a determination that the outage alarm is present in the one or more neighboring nodes.
16. The system (130) as claimed in claim 11, wherein the data processing module (356) is further configured to:
determine, based on the mapping of the set of nodes with the at least one alarm, whether the degradation in the performance of the set of nodes is caused by an alarm on the set of nodes or caused by one or more factors other than the alarm;
identify the alarm on the set of nodes as the root cause upon a determination that the degradation in the performance of the set of nodes is caused by the alarm on the set of nodes; and
assign the set of nodes with the degraded performance to a user of a user device (120) by transmitting information related to the identified root cause to the user device (120) via a transceiver (370).
17. The system (130) as claimed in claim 16, further comprising:
a data generation module (362) configured to generate, based on one or more predefined Standard Operating Procedures (SOPs), recommendation information including one or more remedial actions for improving the performance of the set of nodes upon a determination that the degradation in the performance of the set of nodes is caused due to the one or more factors other than the alarm, wherein the transceiver (370) is configured to transmit the generated recommendation information to the user device (120).
18. The system (130) as claimed in claim 17, wherein the one or more remedial actions comprise one or more of:
adjusting network configuration parameters associated with the set of nodes;
restarting the set of nodes;
reallocating one or more network resources corresponding to the set of nodes;
optimizing cell parameters of one or more neighboring nodes of the set of nodes; and
scheduling maintenance for the set of nodes to clear hardware faults.
19. The system (130) as claimed in claim 11, wherein the first database (390) corresponds to one of a distributed database, a time-series database, or a relational database.
20. The system (130) as claimed in claim 11, wherein the second database (395) corresponds to a distributed file system, a relational database, a non-relational database, a time-series database.
| # | Name | Date |
|---|---|---|
| 1 | 202421023086-STATEMENT OF UNDERTAKING (FORM 3) [24-03-2024(online)].pdf | 2024-03-24 |
| 2 | 202421023086-PROVISIONAL SPECIFICATION [24-03-2024(online)].pdf | 2024-03-24 |
| 3 | 202421023086-POWER OF AUTHORITY [24-03-2024(online)].pdf | 2024-03-24 |
| 4 | 202421023086-FORM 1 [24-03-2024(online)].pdf | 2024-03-24 |
| 5 | 202421023086-DRAWINGS [24-03-2024(online)].pdf | 2024-03-24 |
| 6 | 202421023086-DECLARATION OF INVENTORSHIP (FORM 5) [24-03-2024(online)].pdf | 2024-03-24 |
| 7 | 202421023086-FORM-26 [16-04-2024(online)].pdf | 2024-04-16 |
| 8 | 202421023086-Proof of Right [30-07-2024(online)].pdf | 2024-07-30 |
| 9 | 202421023086-Request Letter-Correspondence [02-03-2025(online)].pdf | 2025-03-02 |
| 10 | 202421023086-Power of Attorney [02-03-2025(online)].pdf | 2025-03-02 |
| 11 | 202421023086-Form 1 (Submitted on date of filing) [02-03-2025(online)].pdf | 2025-03-02 |
| 12 | 202421023086-Covering Letter [02-03-2025(online)].pdf | 2025-03-02 |
| 13 | 202421023086-ORIGINAL UR 6(1A) FORM 1-030325.pdf | 2025-03-05 |
| 14 | 202421023086-FORM 18 [10-03-2025(online)].pdf | 2025-03-10 |
| 15 | 202421023086-DRAWING [10-03-2025(online)].pdf | 2025-03-10 |
| 16 | 202421023086-CORRESPONDENCE-OTHERS [10-03-2025(online)].pdf | 2025-03-10 |
| 17 | 202421023086-COMPLETE SPECIFICATION [10-03-2025(online)].pdf | 2025-03-10 |
| 18 | Abstract.jpg | 2025-04-29 |