Sign In to Follow Application
View All Documents & Correspondence

System And Method For Determining Operational Conditions Of A Plurality Of Network Services

Abstract: ABSTRACT SYSTEM AND METHOD FOR DETERMINING OPERATIONAL CONDITIONS OF A PLURALITY OF NETWORK SERVICES A system (108) and method (400) for determining an operational condition of a plurality of network services by an event routing manager (ERM) (130) is described. The method (400) includes initializing a timer associated with at least one network service and determining whether the initialized timer is equal to a configured timer. If the initialized timer is equal to the configured timer, connection is established between the ERM (130) and one source to fetch information corresponding to the network service. Current values corresponding to a plurality of parameters associated with the at least one network service are extracted. The extracted current values are compared with predefined threshold values of the plurality of parameters. The operational condition of the at least one network service is determined based on the comparison. An alarm is triggered to a monitoring system (110) and logging an event based on the determined operational condition of the at least one network service. Ref. Fig 3

Get Free WhatsApp Updates!
Notices, Deadlines & Correspondence

Patent Information

Application #
Filing Date
09 November 2023
Publication Number
20/2025
Publication Type
INA
Invention Field
BIO-MEDICAL ENGINEERING
Status
Email
Parent Application

Applicants

JIO PLATFORMS LIMITED
OFFICE-101, SAFFRON, NR. CENTRE POINT, PANCHWATI 5 RASTA, AMBAWADI, AHMEDABAD 380006, GUJARAT, INDIA

Inventors

1. Aayush Bhatnagar
Reliance Corporate Park, Thane - Belapur Road, Ghansoli, Navi Mumbai, Maharashtra 400701, India
2. Sumit Thakur
Reliance Corporate Park, Thane - Belapur Road, Ghansoli, Navi Mumbai, Maharashtra 400701, India
3. Pramod Jundre
Reliance Corporate Park, Thane - Belapur Road, Ghansoli, Navi Mumbai, Maharashtra 400701, India
4. Ganmesh Koli
Reliance Corporate Park, Thane - Belapur Road, Ghansoli, Navi Mumbai, Maharashtra 400701, India
5. Arun Maurya
Reliance Corporate Park, Thane - Belapur Road, Ghansoli, Navi Mumbai, Maharashtra 400701, India
6. Kuldeep Singh
Reliance Corporate Park, Thane - Belapur Road, Ghansoli, Navi Mumbai, Maharashtra 400701, India

Specification

DESC:
FORM 2
THE PATENTS ACT, 1970
(39 of 1970)
&
THE PATENTS RULES, 2003

COMPLETE SPECIFICATION
(See section 10 and rule 13)
1. TITLE OF THE INVENTION
SYSTEM AND METHOD FOR DETERMINING OPERATIONAL CONDITIONS OF A PLURALITY OF NETWORK SERVICES

2. APPLICANT(S)
Name Nationality Address
JIO PLATFORMS LIMITED INDIAN Office - 101, Saffron, Nr. Centre Point, Panchwati 5 Rasta, Ambawadi, Ahmedabad - 380006, Gujarat, India
3. PREAMBLE TO THE DESCRIPTION

The following specification particularly describes the invention and the manner in which it is to be performed.


RESERVATION OF RIGHTS
[0001] A portion of the disclosure of this patent document contains material, which is subject to intellectual property rights such as, but are not limited to, copyright, design, trademark, Integrated Circuit (IC) layout design, and/or trade dress protection, belonging to Jio Platforms Limited (JPL) or its affiliates (hereinafter referred as owner). The owner has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosure, as it appears in the Patent and Trademark Office patent files or records, but otherwise reserves all rights whatsoever. All rights to such intellectual property are fully reserved by the owner.
TECHNICAL FIELD
[0002] The present disclosure relates generally to the field of communication systems. More particularly, the present disclosure relates to systems and methods for determining operational conditions of network services for health assessment.
DEFINITIONS
[0003] As used in the present disclosure, the following terms are generally intended to have the meaning as set forth below, except to the extent that the context in which they are used to indicate otherwise.
[0004] The term “Event” refers to an operation, an occurrence or a change in state within a network or its components that can trigger responses, alerts, or actions.
[0005] The term “Event Routing Manager” refers to an element in an event-driven system where events need to be delivered from event sources to the appropriate event consumers or downstream services.
[0006] The term “Network services” refers to a collection of independently deployable services of an application that communicate over the network.
[0007] The term “Health monitoring of network services” refers to a process of tracking and assessment of the operational status, performance, and availability of network services.
[0008] The term “Central Processing Unit (CPU) usage” refers to a percentage, indicating how much of the CPU's total capacity is being utilized at a given time.
[0009] The term “Memory utilization” refers to the amount of memory being used by a system, an application, or a process compared to the total available memory.
[0010] The term “Network latency” refers to a delay between a request for data and the receipt of that data.
[0011] The term “Error rate” refers to a frequency of errors that occur in a system, typically expressed as a percentage or ratio of the total number of operations, transmissions, or requests.
[0012] The term “Proactive troubleshooting” refers to a preventive approach to identifying and resolving potential issues in the system or the network before they escalate into significant problems.
[0013] The term “Fault isolation” refers to a process of identifying and isolating the source of a fault or failure within the system, the network, or the application.
[0014] The term “Fault diagnostics refers to a process of identifying, analyzing, and understanding faults or failures in a system, application, or network. It involves a systematic approach to detect issues, determine their root causes, and assess their impact on the overall performance and functionality of the system.
[0015] The term “Troubleshooting” is a process used to identify, diagnose, and resolve problems or issues in the system, the application, or the network.
[0016] The term “Monitoring rule” refers to a set of predefined conditions and thresholds that help in tracking the performance, availability, and health of the network services.
[0017] The term “Monitoring tasks” refers to a variety of activities aimed at ensuring the health, performance, and reliability of the services.
[0018] The term “Defined duration/interval" refers to a specific, predetermined length of time during/after which an activity, event, or condition is expected to occur.
[0019] The term “Predefined threshold values” refers to specific, established limits or criteria set in advance to monitor the performance, health, and behavior of the network services.
[0020] The term “Defined range" refers to a specific interval or set of limits within which certain values or measurements are expected to fall.
[0021] These definitions are in addition to those expressed in the art.
BACKGROUND
[0022] The following description of related art is intended to provide background information pertaining to the field of the disclosure. This section may include certain aspects of the art that may be related to various features of the present disclosure. However, it should be appreciated that this section be used only to enhance the understanding of the reader with respect to the present disclosure, and not as admissions of prior art.
[0023] In a network service architecture, it becomes difficult to gain visibility into the performance and health of individual network services. It makes it harder to identify issues and troubleshoot problems if real-time insights into the status of the network services are not available. Fault tolerance is reduced if failures or errors occurring within specific services go unnoticed, which leads to cascading failures and potential system-wide outages. When a problem arises in the network service architecture, it can be challenging to pinpoint the root cause without service health monitoring. Monitoring plays a crucial role in understanding the resource utilization and performance of the network services. Identifying bottlenecks or determining when and how to scale individual services without service health monitoring becomes difficult. Without service health monitoring, network operators only become aware of issues when the issues begin to impact the system, causing unnecessary disruptions and downtime. Further, in an existing centralized monitoring system, the central system (for example, a poll-based system) monitors parameters by fetching the data from the network services. The parameters of the network services are monitored to track the performance, availability, and overall health of the network services to ensure that the network services function correctly. Further, because of some critical issues, the service can get down between two poll durations. In such cases, it is difficult to troubleshoot the root cause of the problem.
[0024] There is, therefore, a need for a system and a method that overcomes the limitations of the prior art.
SUMMARY
[0025] In an exemplary embodiment, a method for determining an operational condition of a plurality of network services is described. The method comprises initializing, by an event routing manager (ERM), a timer associated with at least one network service of the plurality of network services and determining, by the ERM, whether the initialized timer is equal to a configured timer corresponding to the at least one network service. The method further comprises if the initialized timer is equal to the configured timer, establishing, by the ERM, at least one connection with at least one source to fetch information corresponding to the at least one network service and executing, by the ERM, a process. The process includes a step of extracting at least one current value corresponding to each of a plurality of parameters associated with the at least one network service from the fetched information. The process includes comparing, by the ERM, the extracted at least one current value with a predefined threshold value corresponding to each of the plurality of parameters associated with the at least one network service. The process further includes determining, by the ERM, the operational condition of the at least one network service based on the comparison and triggering, by the ERM, an alarm to a monitoring system and logging an event based on the determined operational condition of the at least one network service.
[0026] In some embodiments, the method further comprises resetting, by the ERM, the initialized timer after the process execution.
[0027] In some embodiments, the at least one source is a network management system (NMS) or an operations, administration, and management (OAM). The ERM is connected to the NMS with a first interface, and the ERM is connected to the OAM with a second interface.
[0028] In some embodiments, the method further comprises maintaining, by the ERM, a list of the plurality of parameters for each of the plurality of network services in a database. The plurality of parameters includes central processing unit (CPU) usage, memory utilization, network latency, and error rates.
[0029] In some embodiments, the operational state of the at least one network service is one of a fault state, an available state, and a healthy state.
[0030] In some embodiments, the method further comprises employing, by the ERM, one or more corrective actions to bring the at least one current value corresponding to each of the plurality of parameters within a defined range. The one or more corrective actions include scaling resources, reallocating workloads, or triggering failover mechanisms.
[0031] In some embodiments, the method further comprises identifying, by the ERM, a plurality of trends and patterns corresponding to each of the plurality of network services by analyzing the determined operational condition of each network service. The method further comprises planning, by the ERM, at least one of a plurality of proactive maintenance activities based on the identified plurality of trends and patterns.
[0032] In another exemplary embodiment, a system for determining an operational condition of a plurality of network services is disclosed. The system includes an event routing manager (ERM). The ERM comprises a processing unit configured to initialize a timer associated with at least one network service of the plurality of network services, and a determining unit is configured to determine whether the initialized timer is equal to a configured timer corresponding to the at least one network service. If the initialized timer is equal to the configured timer, the processing unit is configured to establish at least one connection with at least one source to fetch information corresponding to the at least one network service. The processing unit is configured to execute a process to extract at least one current value corresponding to each of a plurality of parameters associated with the at least one network service from the fetched information. The processing unit is configured to compare the extracted at least one current value with a predefined threshold value corresponding to each of the plurality of parameters associated with the at least one network service. The processing unit configured to determine the operational condition of the at least one network service is determined based on the comparison. The processing unit is configured to trigger an alarm to a monitoring system and log an event based on the determined operational condition of the at least one network service.
[0033] In some embodiments, the processing unit is configured to employ one or more corrective actions to bring the at least one current value corresponding to each of the plurality of parameters within a defined range. The one or more corrective actions includes scaling resources, reallocating workloads, or triggering failover mechanisms.
[0034] In some embodiments, the processing unit is configured to identify a plurality of trends and patterns corresponding to each of the plurality of network services and plan at least one of a plurality of proactive maintenance activities based on the identified plurality of trends and patterns.
[0035] The foregoing general description of the illustrative embodiments and the following detailed description thereof are merely exemplary aspects of the teachings of this disclosure, and are not restrictive.
OBJECTIVES
[0036] Some of the objectives of the present disclosure, which at least one embodiment herein satisfies, are as follows:
[0037] An objective of the present disclosure is to provide a system and a method for continuously monitoring an operational state of a network service to detect anomalies and potential issues early.
[0038] Another objective of the present disclosure is to regularly determine the health and availability of each network service to identify bottlenecks, performance degradation, or other issues that impact the overall system. The reliability of network services is enhanced by health monitoring.
[0039] Yet another objective of the present disclosure is to analyze metrics and logs to identify performance bottlenecks, optimize resource utilization, and improve response times.
[0040] Another objective of the present disclosure is to find the root cause of failures or abnormal behavior by analyzing the health and performance metrics of individual network services.
[0041] Another objective of the present disclosure is to plan proactive maintenance activities and prioritize upgrades or patches by identifying trends and patterns in the network services. This helps to avoid service disruptions, security vulnerabilities, or performance degradation due to outdated or unsupported components.
[0042] Other objectives and advantages of the present disclosure will be more apparent from the following description, which is not intended to limit the scope of the present disclosure.
BRIEF DESCRIPTION OF THE ACCOMPANYING DRAWING
[0043] The accompanying drawings, which are incorporated herein, and constitute a part of this disclosure, illustrate exemplary embodiments of the disclosed methods and systems in which like reference numerals refer to the same parts throughout the different drawings. Components in the drawings are not necessarily to scale, emphasis instead being placed upon clearly illustrating the principles of the present disclosure. Some drawings may indicate the components using block diagrams and may not represent the internal circuitry of each component. It will be appreciated by those skilled in the art that disclosure of such drawings includes disclosure of electrical components, electronic components or circuitry commonly used to implement such components.
[0044] FIG. 1A illustrates an exemplary network architecture for implementing a system for determining operational conditions of a plurality of network services, in accordance with an embodiment of the present disclosure.
[0045] FIG. 1B illustrates an exemplary system architecture for facilitating autonomous health monitoring of the plurality of network services, in accordance with an embodiment of the present disclosure.
[0046] FIG. 1C illustrates an exemplary block diagram of the system for determining the operational conditions of the plurality of network services, in accordance with an embodiment of the present disclosure.
[0047] FIG. 1D illustrates an exemplary connection architecture for facilitating communication between an event routing manager (ERM), an operations, administration, and management (OAM), and a network management system (NMS), in accordance with an embodiment of the present disclosure.
[0048] FIG. 2 illustrates an exemplary flow diagram for configuring monitoring rules associated with a network service, in accordance with an embodiment of the present disclosure.
[0049] FIG. 3 illustrates an exemplary flow diagram for performing health monitoring of the network service, in accordance with an embodiment of the present disclosure.
[0050] FIG. 4 illustrates an exemplary flow diagram of a method for determining of the operational conditions of the plurality of network services by the ERM, in accordance with an embodiment of the present disclosure.
[0051] FIG. 5 illustrates an exemplary computer system in which or with which embodiments of the present disclosure may be implemented.
[0052] The foregoing shall be more apparent from the following more detailed description of the disclosure.
LIST OF REFERENCE NUMERALS
100A - Network Architecture
102-1, 102-2…102-N - Plurality of Users
104-1, 104-2…104-N - Plurality of User Equipments
106 - Network
108 - System
130 - Event Routing Manager
100B - System architecture
110 - Monitoring system
122 - Database (DB)
124 - Other services
100C - Block Diagram
111 - Processor(s)
112 - Memory
114 - Plurality of Interfaces
116 - Determining Unit
120 - Processing Unit
100D - Connection Architecture
132 - Network Management System (NMS)
134 - Operations, Administration, and Management (OAM)
200 - Flow diagram
300 - Flow diagram
400 - Flow diagram
500 - Computer system
510 - External Storage Device
520 - Bus
530 - Main Memory
540 - Read Only Memory
550 - Mass Storage Device
560 - Communication Port
570 - Processor
DETAILED DESCRIPTION
[0053] 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. An individual feature may not address any of the problems discussed above or might address only some of the problems discussed above. Some of the problems discussed above might not be fully addressed by any of the features described herein. Example embodiments of the present disclosure are described below, as illustrated in various drawings in which like reference numerals refer to the same parts throughout the different drawings.
[0054] The ensuing description provides exemplary embodiments only, and is not intended to limit the scope, applicability, or configuration of the disclosure. Rather, the ensuing description of the exemplary embodiments will provide those skilled in the art with an enabling description for implementing an exemplary embodiment. It should be understood that various changes may be made in the function and arrangement of elements without departing from the spirit and scope of the disclosure as set forth.
[0055] Specific details are given in the following description to provide a thorough understanding of the embodiments. However, it will be understood by one of ordinary skill in the art that the embodiments may be practiced without these specific details. For example, circuits, systems, networks, processes, and other components may be shown as components in block diagram form in order not to obscure the embodiments in unnecessary detail. In other instances, well-known circuits, processes, algorithms, structures, and techniques may be shown without unnecessary detail in order to avoid obscuring the embodiments.
[0056] Also, it is noted that individual embodiments may be described as a process that is depicted as a flowchart, a flow diagram, a data flow diagram, a structure diagram, or a block diagram. Although a flowchart may describe the operations as a sequential process, many of the operations can be performed in parallel or concurrently. In addition, the order of the operations may be re-arranged. A process is terminated when its operations are completed but could have additional steps not included in a figure. A process may correspond to a method, a function, a procedure, a subroutine, a subprogram, etc. When a process corresponds to a function, its termination can correspond to a return of the function to the calling function or the main function.
[0057] The word “exemplary” and/or “demonstrative” is used herein to mean serving as an example, instance, or illustration. For the avoidance of doubt, the subject matter disclosed herein is not limited by such examples. In addition, any aspect or design described herein as “exemplary” and/or “demonstrative” is not necessarily to be construed as preferred or advantageous over other aspects or designs, nor is it meant to preclude equivalent exemplary structures and techniques known to those of ordinary skill in the art. Furthermore, to the extent that the terms “includes,” “has,” “contains,” and other similar words are used in either the detailed description or the claims, such terms are intended to be inclusive like the term “comprising” as an open transition word without precluding any additional or other elements.
[0058] Reference throughout this specification to “one embodiment” or “an embodiment” or “an instance” or “one instance” means that a particular feature, structure, or characteristic described in connection with the embodiment is included in at least one embodiment of the present disclosure. Thus, the appearances of the phrases “in one embodiment” or “in an embodiment” in various places throughout this specification are not necessarily all referring to the same embodiment. Furthermore, the particular features, structures, or characteristics may be combined in any suitable manner in one or more embodiments.
[0059] The terminology used herein is to describe particular embodiments only and is not intended to be limiting the disclosure. As used herein, the singular forms “a”, “an”, and “the” are intended to include the plural forms as well, unless the context indicates otherwise. It will be further understood that the terms “comprises” and/or “comprising,” when used in this specification, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof. As used herein, the term “and/or” includes any combinations of one or more of the associated listed items. It should be noted that the terms “mobile device”, “user equipment”, “user device”, “communication device”, “device” and similar terms are used interchangeably for the purpose of describing the invention. These terms are not intended to limit the scope of the invention or imply any specific functionality or limitations on the described embodiments. The use of these terms is solely for convenience and clarity of description. The invention is not limited to any particular type of device or equipment, and it should be understood that other equivalent terms or variations thereof may be used interchangeably without departing from the scope of the invention as defined herein.
[0060] While considerable emphasis has been placed herein on the components and component parts of the preferred embodiments, it will be appreciated that many embodiments can be made and that many changes can be made in the preferred embodiments without departing from the principles of the disclosure. These and other changes in the preferred embodiment as well as other embodiments of the disclosure will be apparent to those skilled in the art from the disclosure herein, whereby it is to be distinctly understood that the foregoing descriptive matter is to be interpreted merely as illustrative of the disclosure and not as a limitation.
[0061] In a network service architecture, it becomes difficult to gain visibility into the performance and health of individual network service. It makes it harder to identify issues and troubleshoot problems if real-time insights are not available into the status of the network service. Fault tolerance is reduced if failures or errors occurring within specific network service go unnoticed, which leads to cascading failures and potential system-wide outages. When a problem arises in the network service architecture, it is challenging to pinpoint the root cause without health monitoring of each network service. Monitoring plays a crucial role in understanding the resource utilization and performance of the network service(s). Identifying bottlenecks or determining when and how to scale individual services without the network service health monitoring becomes difficult. Without the network service health monitoring, the network operators only become aware of issues when the issues begin to impact the system, causing unnecessary disruptions and downtime. Further, in an existing centralized monitoring system, the central system (for example, a poll-based system) monitors parameters by fetching the data from the service. The parameters of the network services are monitored to track the performance, availability, and overall health of the network services to ensure that the network services function correctly. Further, because of some critical issues, the network service can get down between two poll durations. In such cases, it is difficult to troubleshoot the root cause of the problem.
[0062] Accordingly, there is a need for systems and methods to perform autonomous health assessments of network services.
[0063] The present disclosure aims to overcome the above-mentioned and other existing problems by providing a system and a method for continuously monitoring the state of network services. To monitor the state of a network service, a number of predefined parameters associated with the network service are monitored over a configurable time. The number of predefined parameters may include, but are not limited to, latency, throughput, error rates, and resource utilization metrics, all of which are monitored over the configurable time interval defined by the system administrator. During operation, if the monitored value of the at least one parameter exceeds a specified threshold value, a critical notification/alarm is generated and dispatched to a centralized monitoring/management system. This alarm mechanism is a vital component of the system, enabling prompt identification and response to any anomalies or performance degradations within the network services architecture.
[0064] The continuous surveillance of the health of the network service is crucial for ensuring the overall stability, availability, and efficiency of the network service architecture. By facilitating real-time monitoring, the disclosed system allows for immediate detection of potential issues and enables the execution of automated responses and recovery protocols in reaction to critical conditions.
[0065] In an example, the plurality of network services may include User Plane Function (UPF) network service, session management network service, network slice management network service, radio access network (RAN) optimization network service, edge computing network service, device management network service, analytics network service, security network service, billing and charging network service, or Application programming interface (API) gateway network service. The UPF network service efficiently routes data packets based on defined Quality of Service (QoS) parameters, ensuring that applications requiring low latency, such as gaming or video streaming, receive priority. By dynamically adjusting data paths, the UPF enhances user experience and optimizes network resource utilization. The session management network service establishes, modifies, and terminates user sessions in a 5G environment. It plays a vital role in ensuring that devices can seamlessly connect to the network while efficiently allocating resources based on user demands. The session management network service manages session lifecycles and maintains session states, contributing to improved connectivity and service reliability. The network slice management network service enables the creation and management of virtual network slices, which are tailored segments of the network optimized for specific applications or user groups. This capability allows operators to allocate resources dynamically based on the unique requirements of various services, such as enhanced mobile broadband or IoT connectivity. By facilitating network slicing, the network slice management enhances flexibility and supports diverse use cases in a 5G ecosystem. The RAN Optimization network service is focused on monitoring and improving the performance of the Radio Access Network. It continuously analyzes network conditions and adjusts resource allocations to minimize interference and maximize coverage. The edge computing network service processes data closer to the end-user, significantly reducing latency for real-time applications. By bringing computation and storage capabilities to the network edge, the edge computing network service enables use cases such as augmented reality, autonomous vehicles, and smart city applications requiring instant data processing. The device management network service oversees the lifecycle of connected devices within the 5G network. The device management network service handles tasks such as device onboarding, configuration management, and software updates. The analytics network service collects and processes data from various components of the 5G network, providing valuable insights into performance metrics and user behavior. The security network service implements robust security measures to protect user data and maintain the integrity of the 5G network. The security network service encompasses functionalities such as authentication, encryption, and real-time threat detection. By continuously monitoring for vulnerabilities and potential attacks, this network service safeguards sensitive information and ensures compliance with security protocols, fostering user trust and confidence in the network. The billing and charging network service manages the financial aspects of service consumption in the 5G network. The billing and charging network service tracks user activity in real-time, enabling flexible charging models based on usage patterns. The API gateway network service serves as a central point of communication between various network services and external applications in the 5G architecture. The API gateway network service manages incoming requests, handles authentication, and routes traffic to the appropriate network service. The API gateway network service simplifies integration, enhances scalability, and improves overall system performance by providing a unified interface and ensuring secure data exchange.
[0066] Hereinafter, exemplary embodiments of the present disclosure will be described with reference to the accompanying drawings FIGs. 1A-5.
[0067] FIG. 1A illustrates an exemplary network architecture (100A) for implementing a system (108) for determining an operational condition of a plurality of network services, in accordance with an embodiment of the present disclosure.
[0068] As illustrated in FIG. 1A, the network architecture (100A) may include one or more user equipments (UEs) (104-1, 104-2…104-N) associated with one or more users (102-1, 102-2…102-N) in an environment. A person of ordinary skill in the art will understand that one or more users (102-1, 102-2…102-N) may collectively referred to as the users (102). Similarly, a person of ordinary skill in the art will understand that one or more UEs (104-1, 104-2…104-N) may be collectively referred to as the UE (104). Although only three UEs (104) are depicted in FIG. 1A, however, any number of the UE (104) may be included without departing from the scope of the ongoing description.
[0069] In an embodiment, the UE (104) may include smart devices operating in a smart environment, for example, an Internet of Things (IoT) system. In such an embodiment, the UE (104) may include, but is not limited to, smartphones, smart watches, smart sensors (e.g., mechanical, thermal, electrical, magnetic, etc.), networked appliances, networked peripheral devices, networked lighting system, communication devices, networked vehicle accessories, networked vehicular devices, smart accessories, tablets, smart television (TV), computers, smart security system, smart home system, other devices for monitoring or interacting with or for the users (102) and/or entities, or any combination thereof. A person of ordinary skill in the art will appreciate that the UE (104) may include, but is not limited to, intelligent, multi-sensing, network-connected devices, which may integrate seamlessly with each other and/or with a central server or a cloud-computing system or any other device that is network-connected.
[0070] Additionally, in some embodiments, the UE (104) may include, but not limited to, a handheld wireless communication device (e.g., a mobile phone, a smartphone, a phablet device, and so on), a wearable computer device (e.g., a head-mounted display computer device, a head-mounted camera device, a wristwatch computer device, and so on), a Global Positioning System (GPS) device, a laptop computer, a tablet computer, or another type of portable computer, a media playing device, a portable gaming system, and/or any other type of computer device with wireless communication capabilities, and the like. In an embodiment, the UE (104) may include, but are not limited to, any electrical, electronic, electromechanical, or equipment, or a combination of one or more of the above devices, such as virtual reality (VR) devices, augmented reality (AR) devices, laptop, a general-purpose computer, desktop, personal digital assistant, tablet computer, mainframe computer, or any other computing device, wherein the UE (104) may include one or more in-built or externally coupled accessories including, but not limited to, a visual aid device such as a camera, an audio aid, a microphone, a keyboard, and input devices for receiving input from the user (102) or the entity such as touchpad, touch-enabled screen, electronic pen, and the like. A person of ordinary skill in the art will appreciate that the UE (104) may not be restricted to the mentioned devices and various other devices may be used.
[0071] Referring to FIG. 1A, the UE (104) may communicate with the system (108) through a network (106) for sending or receiving various types of data. In an embodiment, the network (106) may include at least one of a 5G network, 6G network, or the like. The network (106) may enable the UE (104) to communicate with other devices in the network architecture (100A) and/or with the system (108). The network (106) may include a wireless card or some other transceiver connection to facilitate this communication. In another embodiment, the network (106) may be implemented as, or include any of a variety of different communication technologies such as a wide area network (WAN), a local area network (LAN), a wireless network, a mobile network, a Virtual Private Network (VPN), the Internet, the Public Switched Telephone Network (PSTN), or the like.
[0072] In an embodiment, the network (106) may include, by way of example but not limitation, at least a portion of one or more networks having one or more nodes that transmit, receive, forward, generate, buffer, store, route, switch, process, or a combination thereof, etc. one or more messages, packets, signals, waves, voltage or current levels, some combination thereof, or so forth. The network (106) may also include, by way of example but not limitation, one or more of a radio access network (RAN), a wireless network, a wired network, an internet, an intranet, a public network, a private network, a packet-switched network, a circuit-switched network, an ad hoc network, an infrastructure network, a cable network, a cellular network, a satellite network, a fiber optic network, or some combination thereof.
[0073] The system (108) includes an event routing manager (ERM) (130). The ERM (130) performs health monitoring of the plurality of network services by determining operational conditions/states (e.g., healthy state, fault state, available state) of the plurality of network services.
[0074] The ERM (130) is configured to receive information corresponding to one or more network parameters associated with each network service from one or more data sources within the network. In one embodiment, the one or more sources may include a Network Management System (NMS) or an Operations, Administration, and management (OAM) system. Upon receipt of this information, the ERM (130) extracts current values of the one or more network parameters from the received information corresponding to the network service received from one of sources of the network (106). The ERM (130) compares the extracted current values with predefined threshold values of the plurality of parameters. The ERM (130) triggers an alarm to a monitoring system and logs an event if the extracted current value of the at least one parameter crosses the predefined threshold value for the at least one parameter. Further, the ERM (130) is configured to trigger the alarm to alert other network services. The other network services are part of a chain of interconnected network services. In this way, the alarm not only indicates the presence of issues but also alerts other network services. These alerts ensure that all relevant parts of the network are aware of the issue. The triggering of alarms helps in proactive network management, allowing interconnected services to respond quickly to the issues, maintain operational efficiency, and ensure that users experience minimal disruption.
[0075] In an embodiment, the user equipment (104) is communicatively coupled with the system (108). The system (108) receives a connection request from the UE (104). The system (108) sends an acknowledgment of the connection request to the UE (104). The UE (104) transmits a plurality of signals in response to the connection request. The system (108) is configured to determine the operational conditions of the plurality of network services.
[0076] Although FIG. 1A shows exemplary components of the network architecture (100A), in other embodiments, the network architecture (100A) may include fewer components, different components, differently arranged components, or additional functional components than depicted in FIG. 1A. Additionally, or alternatively, one or more components of the network architecture (100A) may perform functions described as being performed by one or more other components of the network architecture (100A).
[0077] FIG. 1B illustrates an exemplary system architecture (100B) of the system (108) for facilitating autonomous health monitoring of the plurality of network services, in accordance with an embodiment of the present disclosure.
[0078] The system architecture (100B) includes the ERM (130), a database (122), and a monitoring system (e.g., central monitoring/management system) (110), other services (124). The ERM (130) may communicate with the database (122). The ERM (130) may be in communication with the monitoring system (110) and other services (124). In an aspect, the other services (124) include, but are not limited to, network traffic, quality management, security management, configuration management, usage management, billing management, etc.
[0079] In an aspect, the plurality of network services includes, but is not limited to, authorization network services, authentication network services, session management network services, user registration network services, password management network services, access control network services, configuration, billing management, quality management, location management, etc. In an aspect, the plurality of network services includes, but is not limited to, network services associated with a management and orchestration (MANO) framework. The network services associated with the MANO framework includes network services associated with components of the MANO such as a virtualized infrastructure manager (VIM), a containerized network function (CNF) manager (CNFM), and a network functions virtualization orchestrator (NFVO). Furthermore, the plurality of network services includes network services associated with 5G core service. The 5G core services include services associated with, but are not limited to, network slicing, session management, quality management, policy control, session management, network health monitoring, etc.
[0080] In an aspect, the network service is implemented as a microservice. The microservice refers to a software architecture where an application is composed of small, independently deployable services, each responsible for a specific business function. The microservices communicate over well-defined application programming interfaces (APIs) and can be developed, deployed, and scaled independently.
[0081] In an aspect, the ERM (130) may perform monitoring of rules, timers, and parameters associated with each network service with a corresponding threshold value stored in memory. A list of parameters corresponding to each of the plurality of network services with threshold values is maintained to monitor each network service's operational state over time. The parameters corresponding to the plurality of network services include, but are not limited to, latency, throughput, error rate, central processing unit (CPU) usage, memory usage, network traffic, response time, availability/uptime, user sessions. In an aspect, the latency refers to the time taken for requests to be processed. The throughput refers to number of requests processed per second. The error rate refers to percentage of failed requests or errors encountered. The CPU usage refers to percentage of CPU resources being used by the network service. The memory usage refers to amount of memory consumed by the network service. The network traffic refers to volume of data sent and received over the network. The response time refers to time taken to respond to the requests. The availability/uptime refers to percentage of time the network service is operational and accessible. The user sessions refer to number of active user sessions to provide insight about the service load and usage trends.
[0082] A configurable/predefined threshold value is set for each parameter of the list to detect the threshold break/breach condition. The monitoring rules are configured to be executed for a specific duration or interval to determine the parameter values. The task is monitored after the specified time configured. Once the monitoring task is executed, the current value of the defined parameters is checked.
[0083] In an implementation, various service parameters are defined for each of the network services. The ERM (130) monitors the predefined service parameters over the configurable time. On determining that the monitoring parameters cross the threshold value, the ERM (130) may send an alarm to the monitoring system (110). The ERM (130) may send critical notifications to any other system for corrective action.
[0084] In an aspect, the ERM (130) performs health monitoring to monitor the state of network services continuously. The state of network services includes, but is not limited to, an active state, an idle state, a failed state, an unresponsive state, and an under-maintenance state. The active state indicates that the network service is active and performing designated tasks. The idle state indicates that the network service is running but not handling any requests or performing significant operations. The failed state indicates that the network service has encountered an error or issue that has caused the network service to stop functioning properly. The unresponsive state indicates that the network service is not responding to requests, and health checks are failing. The under-maintenance state indicates that the network service is not responding to requests, and health checks are failing.
[0085] Further, various metrics (for example, CPU usage, memory utilization, network latency, error rates, etc.) are monitored for each network service to detect anomalies and potential issues early. In an aspect, the metrics are monitored to detect high CPU usage, high memory utilization, high network latency, and high error rates. For example, high CPU usage indicates that the network service is under heavy load, inefficiently processing requests. The anomalies in the CPU usage include sudden spikes or sustained high usage. High memory utilization causes performance issues, service crashes, an increase in collection time, etc. The high network latency may be caused due to network issues, overloaded services, or inefficient communication protocols. The network latency causes network bottlenecks or issues in inter-network service communication. The high error rate may be caused due to misconfigurations or external dependency failures. The high error rates cause failures, delays, service unavailability, etc. The early detection of anomalies and potential issues involves proactive monitoring, analyzing metrics and logs, and ensuring that network services operate efficiently and reliably. This enables proactive troubleshooting and helps prevent service degradation or failures.
[0086] According to an aspect of the present disclosure, the ERM (130) regularly checks the health and availability of each network service to identify any bottlenecks, performance degradation, or other issues that might impact the overall system. This enhances the reliability of the network services. Appropriate actions (for example, scaling resources, reallocating workloads, or triggering failover mechanisms, etc.) are taken to ensure continuous service availability. In an aspect, scaling resources for the network services involves adjusting the amount of computational power, memory, and other resources allocated to each network service to handle varying loads and ensure optimal performance. In an aspect, reallocating workloads of the network services involves adjusting how and where incoming requests and data are distributed across the network services to optimize performance, improve efficiency, and ensure balanced resource usage. In an aspect, triggering failover mechanisms involves detecting failures and automatically redirecting traffic or requests to alternative network services to maintain service availability.
[0087] In an implementation, the predefined parameters of the network service are monitored over the configurable time. When the threshold value is not defined for any parameter, the ERM (130) may log an error. Further, when the defined threshold value is not reached, the ERM (130) may log an error. By analyzing metrics and error logs, the ERM (130) may identify performance bottlenecks. Further, valuable insights are obtained by analyzing metrics and error logs into the performance characteristics of the network services.
[0088] In an aspect, when an issue occurs within a network service environment, health monitoring of network services helps in fault isolation and diagnostics. By analyzing the health and performance metrics of individual services, the root causes of failures or abnormal behavior are easily located. This accelerates the troubleshooting process and reduces the mean time to repair (MTTR). In an aspect, the mean time to repair (MTTR) is a performance metric used to assess the efficiency of event response and recovery processes in the network services architecture. The MTTR represents the average time taken to restore the network service to normal operation after a failure has been detected.
[0089] According to an implementation of the present disclosure, the ERM (130) may track the overall health of the network services over time. By identifying trends and patterns (e.g., sudden spikes in resource usage or memory leaks, high request rates or sudden traffic spikes, incorrect resource limits), the ERM (130) may plan proactive maintenance activities and prioritize upgrades or patches. The proactive maintenance activities include, but are not limited to, routine updates, scaling, configuration management, implementing security measures, and adjusting resource allocation. The prioritization of upgrades or patches helps in addressing bugs, security vulnerabilities, and performance improvements. This helps in avoiding service disruptions, security vulnerabilities, or performance degradation due to outdated or unsupported components.
[0090] In an aspect, the ERM (130) performs autonomous health monitoring of the plurality of network services by determining the operational states of the plurality of network services. The ERM (130) initializes a timer associated with at least one network service of the plurality of network services. The ERM (130) determines whether the initialized timer equals a configured timer corresponding to the at least one network service. The configured time is configured for a defined duration. If the initialized timer is equal to the configured timer, the ERM (130) establishes a connection with at least one data source to fetch information corresponding to the at least one network service. The data source includes the NMS and the OAM. Information corresponding to the at least one network service is received from the OAM and the NMS over EM_OA interface and EM_NMS interface, respectively. The information includes current values of a plurality of parameters corresponding to the at least one network service. The plurality of parameters includes central processing unit (CPU) usage, memory utilization, network latency, and error rates. The ERM (130) extracts the current values of each of the plurality of parameters associated with the at least one network service. The extracted current values of each of the plurality of parameters are compared with the predefined threshold values of the each of the plurality of parameters. Based on the comparison, the ERM (130) determines the operational condition/state of the at least one network service. The ERM (130) triggers the alarm to the monitoring system based on the determined operational condition/state of the at least one network service. The operational condition/state of the at least one network service is one of a fault state, an available state, and a healthy state. In an aspect, the fault state refers to a condition in which a network service is not functioning correctly, resulting in degradation or failure of intended operation. In an example, an authentication network service experiences a sudden spike in traffic, leading to resource exhaustion (i.e., high CPU usage and high memory usage). In an aspect, the available state refers to a condition where the network service is fully operational, can respond to requests, and performs the intended functions without errors. In an example, a user location service network service is in an available state, functioning optimally within the network, meeting user demands, and maintaining system integrity, with a response time of 150 milliseconds and an error rate of 0%. In an aspect, the healthy state of the network service refers to a condition where the network service is not only operational and available but also performing well in terms of resource usage and interactions. In an example, a short messaging service (SMS) sending network service is running smoothly, with response time 100 milliseconds per SMS request, error rate = 0.1% (i.e., few failed requests but within acceptable limits), CPU Usage = 60% (i.e., within the optimal range), memory usage = 70% of allocated resources, throughput of successfully processing 500 SMS messages per minute. The event is also logged in the monitoring system. The health issues of the network service are resolved by taking corrective actions. The corrective actions include scaling resources, reallocating workloads, or triggering failover mechanisms. In an aspect, the scaling resources refers to adjusting the amount of the CPU usage, the memory usage, or other resources allocated to a network service to meet demand and maintain performance. In an example, a video streaming network service is experiencing an increase in user traffic during a live event. The current values of parameters of the video streaming network service include response time = 800 milliseconds > threshold 750 milliseconds, CPU usage = 90% > threshold 85%, error rate = 5% > threshold 3%, memory usage = 85% > threshold 80%. The corrective action such as scaling resources is applied. Vertical scaling includes increasing resources (e.g., CPU cores and memory). Horizontal scaling includes deploying additional instances of the video streaming network service. Auto-scaling automatically adjusts the number of instances based on real-time metrics (e.g., scaling up when CPU usage exceeds 80% and scaling down when it falls below 50%). In an aspect, the corrective actions further include generation of tickets corresponding to severity of the alarm. The generated tickets are assigned to a network operator to perform execution of the corrective actions corresponding to the generated tickets. The generation of tickets serves as formal records of the health issues, including details such as severity (e.g., how critical the problem is). The details (e.g., severity) can help prioritize which issues need urgent attention. Each generated ticket is assigned to the network operator or the technician to address the problem related to the ticket. The network operator reviews the ticket and executes the necessary steps to resolve the issue, which may include troubleshooting, repairs, or system adjustments.
[0091] In an aspect, reallocating workloads of network services involves redistributing the processing of incoming requests among different instances of network services or across various network services to optimize resource usage, improve performance, and ensure high availability. The reallocating workloads further include adding more instances of the network service, load balancing (i.e., distribution of incoming requests across multiple instances, service migration (e.g., moving workload from one network service to another network service), queue management, etc.
[0092] In an aspect, triggering of failover mechanism involves automatically redirecting traffic (i.e., incoming requests) to a backup network service or instance when a primary network service becomes unavailable.
[0093] Although FIG. 1B shows exemplary components of the system architecture (100B), in other embodiments, the system architecture (100B) may include fewer components, different components, differently arranged components, or additional functional components than depicted in FIG. 1B. Additionally, or alternatively, one or more components of the system architecture (100B) may perform functions described as being performed by one or more other components of the system architecture (100B).
[0094] FIG. 1C illustrates an exemplary block diagram (110C) of the system (108) for determining the operational conditions of the plurality of network services, in accordance with an embodiment of the present disclosure.
[0095] Referring to FIG. 1C, in an embodiment, the system (108) may include one or more processor(s) (111), a memory (112), a plurality of interface(s) (114), the ERM (130), and a database (122).
[0096] The one or more processor(s) (111) may be implemented as one or more microprocessors, microcomputers, microcontrollers, digital signal processors, central processing units, logic circuitries, and/or any devices that process data based on operational instructions. Among other capabilities, the one or more processor(s) (111) may be configured to fetch and execute computer-readable instructions stored in the memory (112) of the system (108). The memory (112) may be configured to store one or more computer-readable instructions or routines in a non-transitory computer readable storage medium, which may be fetched and executed to create or share data packets over a network service. The memory (112) may include any non-transitory storage device including, for example, volatile memory such as random-access memory (RAM), or non-volatile memory such as erasable programmable read only memory (EPROM), flash memory, and the like.
[0097] In an embodiment, the interface(s) (114) may include a variety of interfaces, for example, interfaces for data input and output devices (I/O), storage devices, and the like. The interface(s) (114) may facilitate communication through the system (108). The interface(s) (114) may also provide a communication pathway for one or more components of the system (108). Examples of such components include, but are not limited to, the database (122).
[0098] The ERM (130) includes a determining unit (116) and a processing unit (120).
[0099] The processing unit (120) is configured to initialize the timer associated with at least one network service of the plurality of network services. In an aspect, the timer is decided based on need (e.g., periodic tasks, measuring execution time, triggering of events). In an operative aspect, the timer triggers an event to determine the operational condition of the at least one network service. The timer is configured for the network service based on configurations (e.g., start the timer on receiving a request or at a defined time or at a defined interval). Based on the configuration, the timer associated with the at least one network service is initialized (e.g., in an operative aspect, after the defined interval (e.g., after every 5 minutes).
[00100] The determining unit (116) is configured to determine whether the initialized timer is equal to a configured timer corresponding to the at least one network service. The initialized timer is configured to reset after the process (having a number of predefined steps) execution. In an example, the initialized timer may represent an interval between the monitoring tasks. For example, after executing monitoring task, the determining unit (116) is configured to wait up to the configured timer. If the initialized timer is equal to the configured timer, then the determining unit (116) execute the monitoring task again. The configured timer is configured for a defined duration. In an example, the defined duration for the configured timer is 2 seconds. The determining unit (116) determines whether the initialized timer is equal to the configured timer (i.e., whether the initialized timer is equal to 2 seconds).
[00101] If the initialized timer is equal to the configured timer, the processing unit is configured to establish at least one connection with the at least one source to fetch information corresponding to the at least one network service. In an aspect, the processing unit is configured to extract the plurality of parameters associated with the at least one network service. The plurality of parameters includes, but is not limited to, CPU usage, memory utilization, network latency, and error rates. In an aspect, when the initialized timer is equal to the configured timer (i.e., the initialized timer = 2 seconds), the connection is established between the ERM (130) and one data source (e.g., the OAM or the NMS) to fetch the information corresponding to the at least one network service. The information corresponding to the at least one network service includes current values of the plurality of parameters associated with the at least one network service.
[00102] The processing unit (120) is configured to execute the process. The process includes extracting at least one current value corresponding to each of the plurality of parameters associated with the at least one network service from the fetched information. In an example, the current values of CPU Usage = 95%, memory usage = 75%, Network Latency = 120 milliseconds, Error Rate = 2%. The initialized timer is configured to reset after the process execution.
[00103] The processing unit (120) may include a comparing unit that is configured to compare the extracted at least one current value with a predefined threshold value corresponding to each of the plurality of parameters associated with the at least one network service. The threshold values for parameters, for example, CPU usage = 90%, memory utilization = 90%, network latency = 200 milliseconds, error rates = 3%. The extracted at least one current value is compared with the predefined threshold value corresponding to each of the plurality of parameters associated with the at least one network service. In an example, the extracted current values of the parameters (e.g., CPU Usage = 95%, memory usage = 75%, Network Latency = 120 milliseconds, Error Rate = 2%) compared with the predefined threshold values (e.g., CPU usage = 90%, memory utilization = 90%, network latency = 200 milliseconds, error rates = 3%).
[00104] The determining unit (116) is configured to determine the operational condition of the at least one network service based on the comparison. The operational condition of the at least one network service includes, but is not limited to, the fault state, the available state, and the healthy state. Based on the comparison between the current values and the threshold values of each of the plurality of parameters, the operational condition of the at least one network service is determined. In an aspect, when the current values of at least one network service are within the threshold values, the operational condition of the at least one network service is considered to be in the healthy state. When some of the current values of the at least one network service are approaching the threshold values, the operational condition of the at least one network service is considered to be in the fault state (i.e., warning state). When some of the current values of the at least one network service exceed the threshold values, the operational condition of the at least one network service is considered to be in the fault state (i.e., critical state). When all the current values are within the threshold values and the network service is ready to accept and handle incoming requests effectively, then the network service is considered to be in the available state. The available state of the network service includes, but is not limited to, processing requests within acceptable response times, error rates, having an adequate amount of resources, not facing any critical issues, etc.
[00105] The processing unit (120) is configured to trigger an alarm to the monitoring system (110) and log the event based on the determined operational condition of the at least one network service. In an aspect, triggering of the alarm to the monitoring system (110) includes sending of a notification to the monitoring system (110), sending of automated responses (e.g., scaling resources, restarting of the network service, etc.). In an example, on comparing the current values with the predefined threshold values, the current value of CPU Usage = 95% crosses the predefined threshold value = 90%. The processing unit (120) triggers the alarm to the monitoring system (110) when the CPU usage exceeds the predefined threshold value. This allows for early detection of anomalies and potential issues through parameter monitoring, enabling proactive troubleshooting and helping to prevent degradation or failures of the network services.
[00106] In an aspect, the processing unit (120) is configured to resolve health issues of the at least one network service whose current value of the at least one parameter has crossed the predefined threshold value by taking corrective action to bring the values to a defined range. When the at least one network service has a parameter value that exceeds the predefined threshold, the issues are analyzed to determine the root cause. In an aspect, the root cause of the network service issues refers to the factors that trigger a failure or malfunction in one or more network services. The factors include, but are not limited to, service dependencies (i.e., issues in one network service affecting other network service), configuration errors (e.g., misconfigurations), infrastructure problems (e.g., server problems, resource constraints, etc.), data issues (e.g., problems with data integrity, database performance), deployment errors. In an aspect, data corresponding to the issues are collected. The collected data is analyzed to determine the issues (e.g., patterns or spikes in error messages, stack traces, unusual log entries, etc.). The parameters (i.e., performance metrics such as response time, error rate, throughput, etc.) are monitored to determine anomalies, bottlenecks, reasons for failure or slowdown, bugs, misconfigurations, etc.
[00107] Corrective actions are then identified and implemented to bring the parameter values back within the defined range. After applying these corrective actions, the network service is monitored to ensure that the parameter values stabilize within the desired range. For example, the CPU usage of the network service exceeds 90%, leading to performance degradation. Analyzing the CPU usage to determine the issues (e.g., refactor inefficient algorithms or reduce unnecessary computations). The corrective actions (e.g., increasing resources or scaling up the network service by increasing the CPU resources allocated to the network service). The scaling adds more network service instances to distribute the load and reduce CPU usage per instance.
[00108] Furthermore, in an aspect, the processing unit (120) is configured to identify a plurality of trends and patterns corresponding to each of the plurality of network services. The trends and patterns corresponding to each of the plurality of network services are identified to detect early warning signs of potential issues, recognize patterns in failures or outages, forecast capacity needs, troubleshoot issues, identify bottlenecks etc. In an aspect, identifying the trends and the patterns in the network services refers to a process of understanding performance, usage, and potential issues corresponding to the network services over time. Identifying the trends and patterns involves collecting and analyzing data related to the behavior and parameters (e.g., performance metrics) of the network services. Patterns that occur at specific times, usage metrics, and deviations from expected patterns are identified.
[00109] The processing unit (120) is configured to plan at least one of a plurality of proactive maintenance activities based on the identified plurality of trends and patterns. In an aspect, the proactive maintenance activities refer to the ongoing processes and tasks required to ensure that network services are functioning optimally, remain secure, and continue to meet needs. The proactive maintenance activities include, but are not limited to, regular health checkups, regular updates, scalability testing, incident response planning, security audits and updates, etc.
[00110] In an aspect, monitoring the at least one network service by determining the operation condition of the at least one network service is performed to assess the health of the at least one network service. The health monitoring allows continuous monitoring the health and availability of the at least one network service.
[00111] In an embodiment, the database (122) that includes data that may be either stored or generated as a result of functionalities implemented by any of the components of the processor (111). The database (122) may include any computer-readable medium known in the art including, for example, volatile memory, such as Static Random Access Memory (SRAM) and Dynamic Random Access Memory (DRAM), and/or non-volatile memory, such as Read Only Memory (ROM), erasable programmable ROM, flash memories, hard disks, optical disks, and magnetic tapes. In an aspect, the database (122) may be implemented in the ERM (130).
[00112] In an aspect, the database (122) is configured to store program instructions and data corresponding to the list of the plurality of parameters of the plurality of network services. The database (122) is configured to store the threshold values defined for the plurality of parameters. The program instructions include a program that implements a method for performing autonomous health monitoring of a plurality of network services by the ERM (130), in accordance with embodiments of the present disclosure and may implement other embodiments described in this specification.
[00113] Although FIG. 1C shows exemplary components of the block diagram (100C) of the system (108), in other embodiments, the block diagram (100C) of the system (108) may include fewer components, different components, differently arranged components, or additional functional components than depicted in FIG. 1C. Additionally, or alternatively, one or more components of the block diagram (100C) of the system (108) may perform functions described as being performed by one or more other components of the block diagram (100C) of the system (108).
[00114] FIG. 1D illustrates an exemplary connection architecture for facilitating communication between the ERM (130), an OAM (134), and an NMS (132), in accordance with an embodiment of the present disclosure.
[00115] In an aspect, the ERM (130) may communication with a plurality of data sources. The plurality of data sources includes the NMS (132) and the OAM (134). The ERM (130) may communicate with the NMS (132) via a first interface (i.e., an event routing manager_network management system interface (EM_NMS interface)). The ERM (130) may communicate with the OAM (134) via a second interface (i.e., an event routing manager_operations, administration, and management interface (EM_OA interface)). The ERM (130) may perform health monitoring of the network services via the EM_OA interface and the EM_NMS interface. In an aspect, the NMS (132) refers to a system for monitoring, controlling, and managing network resources and services. The NMS (132) enables network administrators to maintain the performance, availability, and security of the network infrastructure. The NMS (132) handles the plurality of network services, but are not limited to, network monitoring, fault management, configuration management, performance management, security management. In an aspect, the OAM (134) refers to the set of functions and processes used to manage and maintain the networks. The OAM (134) is essential for ensuring that network services operate efficiently, are reliable, and meet performance standards. The OAM (134) handles the plurality of network services, but are not limited to, network monitoring, fault management, configuration management, performance management, resource management, user management, backup and recovery management.
[00116] In an aspect, the ERM (130) may receive information corresponding to the plurality of network services from the NMS (132) and the OAM (134) via the EM_NMS interface and the EM_OA interface, respectively. The information includes current values of the parameters corresponding to the plurality of network services.
[00117] FIG. 2 illustrates an example flow diagram (200) for configuring monitoring rules associated with a network service, in accordance with an embodiment of the present disclosure.
[00118] At step (202) of the flow diagram (200), the ERM (130) may accept a request to configure the monitoring rule for one of the network services. In an aspect, the monitoring rule is configured to run a timer for duration/interval to check the parameter values. The timer of the defined duration/interval is set for the plurality of parameters (e.g., CPU usage, memory utilization, network latency, error rates) associated with the plurality of network services to be monitored.
[00119] At step (204) of the flow diagram (200), the ERM (130) may determine whether the frequency (i.e., the timer) is defined for a task (i.e., monitoring of health or operational condition of the network service). In an example, the frequency may refer a total number of executions to be performed to monitor the network service.
[00120] At step (206) of the flow diagram (200), on determining that the frequency (i.e., the timer) for the task is not defined, the ERM (130) may send an error to the monitoring system (110).
[00121] At step (208) of the flow diagram (200), on determining that the frequency (i.e., the timer) for the task is defined, the ERM (130) may accept the request to configure the monitoring rule and create a monitoring task for the request.
[00122] At step (210) of the flow diagram (200), the ERM (130) may determine whether the threshold value for the parameter is defined. In an aspect, threshold values for performance and operational parameters are set to maintain network health and ensure optimal performance.
[00123] At step (212) of the flow diagram (200), on determining that the threshold value for the parameter is not defined, the ERM (130) may send an error to the monitoring system (110). In an aspect, on determining that the threshold value for the parameter is not defined, the ERM (130) sends the error (e.g., “Configuration Error: No threshold value set for parameter” or “Missing threshold values for parameters”) to the monitoring system (110).
[00124] At step (212) of the flow diagram (200), on determining that the threshold value for the parameter is not defined, the ERM (130) may configure the threshold value for the parameter in the list. In an example, parameters in cellular networks include bandwidth usage, signal strength, latency, CPU usage, and memory usage. The ERM (130) determines appropriate threshold values for the parameters based on operational requirements and historical data. In an example, the bandwidth usage = 80% of total bandwidth (i.e., 800 Mbps of total bandwidth = 1 Gbps). For signal strength, Threshold = -70 dBm. The signal strength below the level (i.e., -70 dBm) starts causing degradation in service. For latency, threshold = 100 milliseconds. The latency beyond the level (e.g., 100 milliseconds) starts impacting user experience. For CPU utilization, threshold = 75% CPU utilization. The sustained usage beyond the level (e.g., 75%) indicates potential issues.
[00125] FIG. 3 illustrates an example flow diagram (300) for performing health monitoring of the network service, in accordance with an embodiment of the present disclosure.
[00126] At step (302) of the flow diagram (300), the ERM (130) may start monitoring of the network service. A timer (i.e., initialized timer) of specific duration/interval is set for monitoring parameters associated with the network service. The monitoring task is started after the timer has reached the specific duration/interval.
[00127] At step (304) of the flow diagram (300), in order to start the monitoring task, the ERM (130) may determine whether the timer configured for the specific duration/interval is reached.
[00128] At step (306) of the flow diagram (300), on determining that the timer has not reached the specific duration/interval, the ERM (130) may keep on determining whether the timer configured for the specific duration/interval is reached or not.
[00129] At step (308) of the flow diagram (300), on determining that the timer has reached the specific duration/interval (i.e., configured timer), the ERM (130) may determine the current value for parameters. In an aspect, when the timer has reached the specific duration/interval, the ERM (130) determines the current values for parameters (e.g., CPU usage, memory utilization, network latency, and error rates). In an example, current values for CPU usage = 85%, memory utilization = 95%, network latency = 150 milliseconds, and error rate = 6%.
[00130] At step (310) of the flow diagram (300), the ERM (130) may determine whether the threshold value is defined. The ERM (130) determines whether threshold values are defined for the parameters or not.
[00131] At step (312) of the flow diagram (300), on determining that the threshold value is not defined, the ERM (130) may log the error to the monitoring system (110). When the ERM (130) determines that the threshold values are not defined for the parameters, the ERM (130) logs the error to the monitoring system (110).
[00132] At step (314) of the flow diagram (300), on determining that the threshold value is defined, the ERM (130) may determine whether the current value reached to the threshold value. In an example, thresholds for parameters of one of the network services such as CPU usage = 90%, memory utilization = 90%, network latency = 100, error rates = 5%. The ERM (130) receives current values of parameters of the network service from the source (e.g., the NMS (132) or the OAM (134)). The ERM (130) compares the current values with the defined threshold values of the parameters of the network service.
[00133] At step (316) of the flow diagram (300), on determining that the current value is not reached to the threshold value, the ERM (130) may log the event in the database (122). In an aspect, when the ERM (130) determines the current values of the parameters are below the predefined threshold values, the ERM (130) logs the event (e.g., the network service is working properly) in the database (122).
[00134] At step (318) of the flow diagram (300), on determining that the threshold value is reached, the ERM (130) may raise the alarm/ send notification for corrective action to the monitoring system (110). In an aspect, when the timer has reached the defined duration/interval, the ERM (130) compares the current values with the threshold values. The current values for CPU usage = 85%, memory utilization = 95%, network latency = 150 milliseconds, error rate = 6%. The thresholds for CPU usage = 90%, memory utilization = 90%, network latency = 100, error rates = 5%. After comparing current values with threshold values, current values of the memory utilization, network latency, error rate are exceeded the threshold values.
[00135] At step (320) of the flow diagram (300), when the error is logged in the monitoring system (110), the ERM (130) may repeat the steps from step (304) to step (318). The ERM (130) is configured to perform health monitoring of network services when the timer has reached the specified duration/interval.
[00136] FIG. 4 illustrates an exemplary flow diagram of a method (400) for determining the operational condition of the plurality of network services by the ERM (130), in accordance with an embodiment of the present disclosure.
[00137] At step (402), the method (400) includes initializing, by the ERM (130), a timer associated with at least one network service of the plurality of network services. The timer associated with at least one network service is initialized before determining the operational conditions of the network services. In an example, the timer associated with the authentication network service is initialized.
[00138] At step (404), the method (400) includes determining, by the ERM (130), whether the initialized timer is equal to a configured timer corresponding to the at least one network service. In an aspect, the configured timer is configured for a defined duration corresponding to the at least one network service. In an example, the defined duration for the configured timer is 2 seconds. In an example, the ERM (130) determines whether the initialized timer of the network service (i.e., authentication network service) equals the configured timer (e.g., 2 seconds).
[00139] At step (406), the method (400) includes if the initialized timer is equal to the configured timer, establishing, by the ERM (130), at least one connection with at least one source to fetch information corresponding to the at least one network service. The at least one source is the NMS (132) or the OAM (134). The ERM (130) is connected to the NMS (132) with the first interface (e.g., EM_NMS interface), and the ERM is connected to the OAM (134) with the second interface (e.g., EM_OA interface). In an aspect, when the initialized timer is equal to the configured timer (i.e. 2 seconds), the ERM (130) establishes connection with at least one source to fetch information corresponding to the at least one network service. In an example, the ERM (130) establishes connection with the one source (e.g., the OAM (134)) to fetch information corresponding to the authentication network service. The information corresponding to the authentication network service includes, but is not limited to, response time, service availability, performance metrics (e.g., latency, throughput, error rates), resource utilization (e.g., CPU usage, memory utilization, disk input/output operations), session management (e.g., active sessions, session expiry rates, etc.), security metrics (e.g., successful or failed login attempts), etc. In an aspect, the initialized timer is configured to reset after the process execution. When the connection is established between the one source and the ERM, the initialized timer is reset.
[00140] At step (408), the method (400) includes executing, by the ERM (130), an extraction process to extract at least one current value corresponding to each of a plurality of parameters associated with the at least one network service from the fetched information. For example, parameter values for the authentication network service include response time = 150 milliseconds, error rate = 3%, CPU usage = 85%, memory usage = 65%, and active session = 955.
[00141] At step (410), the method (400) includes comparing, by the ERM (130), the determined at least one current value with a predefined threshold value corresponding to each of the plurality of parameters associated with the at least one network service. In an aspect, the extracted current values of the parameters corresponding to the network service are compared with the threshold values of the parameters. In an example, the threshold values for parameters of the authentication network service, for example, response time = 200 milliseconds, error rate = 1%, CPU usage = 80%, memory usage = 70%, active sessions = 10000.
[00142] At step 412, the method (400) includes determining, by the ERM (130), the operational condition of the at least one network service based on the comparison. The operational condition of the network service is determined based on the comparison between current values and threshold values associated with the network service. In an example, upon comparing current values and threshold values of the authentication network service, the response time, the memory usage, the active sessions are below the threshold values. The error rate, the CPU usage are above the threshold values.
[00143] At step 414, the method (400) includes triggering, by the ERM (130), an alarm to a monitoring system (110) and logging an event based on the determined operational condition of the at least one network service. The ERM (130) triggers the alarm to notify the monitoring system (110). The ERM (130) employs one or more corrective actions to bring the at least one current value corresponding to each of the plurality of parameters within a defined range. The one or more corrective actions include scaling resources, reallocating workloads, or triggering failover mechanisms. In an example, when the error rate and the CPU usage are above the threshold values for the authentication network services, the alarm is triggered to the monitoring system. Further, the event (e.g., the error rate and the CPU usage are above the threshold values for the authentication network service (i.e., high error rate and high CPU usage)) is logged. The monitoring system (110) determines causes of the error rate and the CPU usage above the threshold values for the authentication network services. The causes for the high CPU usage include, but are not limited to, increased load, inefficient authentication logic or algorithm consuming excessive CPU resources, resource contention, excessive logging, slow database, etc. The causes of the high error rate include, but are not limited to, invalid credentials, authentication service bottlenecks, configuration issues, etc. In an aspect, the monitoring system (110) is configured to determine the exact cause of the high CPU usage and the high error rate. The monitoring system (110) sends the determined exact cause of the high CPU usage and the high error rate to the ERM (130). The ERM (130) employs the corrective actions for the high CPU usage and the high error rate. The corrective actions for the high CPU usage include, but are not limited to, resource scaling, asynchronous processing of authentication request, load balancing by distributing traffic across multiple instances of the authentication network service. The corrective actions for the high error rate include, but are not limited to, rate limiting and throttling, dependency monitoring, security measures, etc.
[00144] The health and availability of the plurality of network services are regularly monitored by determining the operational states of the plurality of network services. The operational state of the at least one network service is one of a fault state, an available state, and a healthy state. This helps identify bottlenecks, performance degradation, and other issues that impact the performance of the network services. Furthermore, the ERM (130) sends critical notifications to other systems for corrective actions. The actions include, but are not limited to, scaling resources, reallocating workloads, or triggering failover mechanisms to ensure continuous service availability.
[00145] In an aspect, the ERM (130) identifies a plurality of trends and patterns corresponding to each of the plurality of network services. The ERM (130) plans at least one of a plurality of proactive maintenance activities based on the identified plurality of trends and patterns. In an example, the plurality of trends and patterns corresponding to the authentication network service include, but is not limited to, usage patterns (e.g., peak usage time, common login times, devices used, locations, etc.), error rates trends (e.g., invalid credentials, timeouts, time-based trends (i.e., error rates during specific time period), success rates, failure rates, attacks, unusual access pattern, device usage statistics, browser trends, resource usage, response time, etc. The ERM (130) plans the proactive maintenance activities include, but are not limited to, capacity planning and scaling (e.g., forecasting demand, autoscaling), performance optimization (e.g., regularly reviewing authentication logic, database optimization), security enhancements (e.g., anomaly detection, rate limiting adjustments, security assessment to identify and address potential risks), infrastructure monitoring (e.g., monitoring tool), regular backs, updates, recovery plans, etc.
[00146] FIG. 5 illustrates an exemplary computer system (500) in which or with which embodiments of the present disclosure may be implemented.
[00147] As shown in FIG. 5, the computer system may include an external storage device (510), a bus (520), a main memory (530), a read-only memory (540), a mass storage device (550), a communication port(s) (560), and a processor (570). A person skilled in the art will appreciate that the computer system may include more than one processor and communication ports. The processor (570) may include various modules associated with embodiments of the present disclosure. The communication port(s) (560) may be any of an RS-232 port for use with a modem-based dialup connection, a 10/100 Ethernet port, a Gigabit or 10 Gigabit port using copper or fiber, a serial port, a parallel port, or other existing or future ports. The communication port(s) (560) may be chosen depending on a network, such a Local Area Network (LAN), Wide Area Network (WAN), or any network to which the computer system connects.
[00148] The main memory (530) may be random access memory (RAM), or any other dynamic storage device commonly known in the art. The read-only memory (540) may be any static storage device(s) e.g., but not limited to, a Programmable Read Only Memory (PROM) chips for storing static information e.g., start-up or Basic Input/Output System (BIOS) instructions for the processor (570). The mass storage device (550) may be any current or future mass storage solution, which can be used to store information and/or instructions. Exemplary mass storage device (550) includes, but is not limited to, Parallel Advanced Technology Attachment (PATA) or Serial Advanced Technology Attachment (SATA) hard disk drives or solid-state drives (internal or external, e.g., having Universal Serial Bus (USB) and/or Firewire interfaces), one or more optical discs, Redundant Array of Independent Disks (RAID) storage, e.g., an array of disks.
[00149] The bus (520) communicatively couples the processor (570) with the other memory, storage, and communication blocks. The bus (520) may be, e.g., a Peripheral Component Interconnect (PCI)/PCI Extended (PCI-X) bus, Small Computer System Interface (SCSI), Universal Serial Bus (USB), or the like, for connecting expansion cards, drives, and other subsystems as well as other buses, such a front side bus (FSB), which connects the processor (570) to the computer system.
[00150] Optionally, operator and administrative interfaces, e.g., a display, keyboard, joystick, and a cursor control device, may also be coupled to the bus (520) to support direct operator interaction with the computer system. Other operator and administrative interfaces can be provided through network connections connected through the communication port(s) (560). Components described above are meant only to exemplify various possibilities. In no way should the aforementioned exemplary computer system limit the scope of the present disclosure.
[00151] The exemplary computer system (500) is configured to execute a computer program product comprising a non-transitory computer-readable medium comprising instructions that, when executed by one or more processors, cause the one or more processors to perform a method for determining an operational condition of a plurality of network services. The method comprises initializing, by an event routing manager (ERM), a timer associated with at least one network service of the plurality of network services and determining, by the ERM, whether the initialized timer is equal to a configured timer corresponding to the at least one network service. The method further comprises if the initialized timer is equal to the configured timer, establishing, by the ERM, at least one connection with at least one source to fetch information corresponding to the at least one network service and executing, by the ERM, an extraction process to extract at least one current value corresponding to each of a plurality of parameters associated with the at least one network service from the fetched information. The method comprises comparing, by the ERM, the extracted at least one current value with a predefined threshold value corresponding to each of the plurality of parameters associated with the at least one network service. The method further comprises determining, by the ERM, the operational condition of the at least one network service based on the comparison and triggering, by the ERM, an alarm to a monitoring system and logging an event based on the determined operational condition of the at least one network service.
[00152] While the foregoing describes various embodiments of the invention, other and further embodiments of the invention may be devised without departing from the basic scope thereof. The scope of the invention is determined by the claims that follow. The invention is not limited to the described embodiments, versions or examples, which are included to enable a person having ordinary skill in the art to make and use the invention when combined with information and knowledge available to the person having ordinary skill in the art.
[00153] The present disclosure provides technical advancement related autonomous health monitoring of a plurality of network services by determining operational conditions of the plurality of network services. This advancement addresses the limitations of existing solutions by using an Event Routing Manager (ERM) responsible for determining of the operational conditions of the plurality of network services. The performance metrics (for example, CPU usage, memory utilization, network latency, and error rates, etc.) are monitored to detect anomalies and potential issues early. This enables proactive troubleshooting and helps in preventing service degradation or failures. The health monitoring enhances the reliability of the network services by regularly determining the health and availability of each service and identifying bottlenecks, performance degradation, or other issues that might impact the overall system. This helps to take appropriate actions (for example, scaling resources, reallocating workloads, or triggering failover mechanisms, etc.) to ensure continuous service availability. By identifying trends and patterns, proactive maintenance activities are planned, and upgrades or patches are prioritized. This helps in avoiding service disruptions, security vulnerabilities, or performance degradation due to outdated or unsupported components.
TECHNICAL ADVANTAGES OF THE INVENTION
[00154] As is evident from the above, the present disclosure provides a technically advanced solution by providing a system and a method for continuously monitoring the health state (e.g., operational conditions) of network services. The vital metrics (for example, CPU usage, memory utilization, network latency, and error rates, etc.) are monitored to detect anomalies and potential issues early. This enables proactive troubleshooting and helps in preventing service degradation or failures. The health monitoring enhances the reliability of the network services by regularly determining the health and availability of each service and identifying bottlenecks, performance degradation, or other issues that might impact the overall system. This helps to take appropriate actions (for example, scaling resources, reallocating workloads, or triggering failover mechanisms, etc.) to ensure continuous service availability. The insights are obtained for the performance characteristics of the network services. By analyzing metrics and logs, resource utilization is optimized, and response times are improved. This allows fine-tuning of network services and achieves optimal performance levels. When an issue occurs within the network service environment, health monitoring assists in fault isolation and diagnostics. By analyzing the health and performance metrics of individual services, the root cause of failures or abnormal behavior is obtained. This accelerates the troubleshooting process and reduces the mean time to repair (MTTR). Health monitoring allows to track the overall health of the network services over time. By identifying trends and patterns, proactive maintenance activities are planned, and upgrades or patches are prioritized. This helps in avoiding service disruptions, security vulnerabilities, or performance degradation due to outdated or unsupported components. ,CLAIMS:Claims
We claim:
1. A method (400) for determining an operational condition of a plurality of network services, the method (400) comprising:
initializing (402), by an event routing manager (ERM) (130), a timer associated with at least one network service of the plurality of network services;
determining (404), by the ERM (130), whether the initialized timer is equal to a configured timer corresponding to the at least one network service;
if the initialized timer is equal to the configured timer, establishing (406), by the ERM (130), at least one connection with at least one source to fetch information corresponding to the at least one network service; and
executing (408), by the ERM (130), a process comprising steps of:
extracting (410) at least one current value corresponding to each of a plurality of parameters associated with the at least one network service from the fetched information;
comparing (412), by the ERM (130), the extracted at least one current value with a predefined threshold value corresponding to each of the plurality of parameters associated with the at least one network service;
determining (414), by the ERM (130), the operational condition of the at least one network service based on the comparison; and
triggering (416), by the ERM (130), an alarm to a monitoring system (110) and logging an event based on the determined operational condition of the at least one network service.
2. The method (400) as claimed in claim 1, further comprising resetting, by the ERM (130), the initialized timer after the process execution.
3. The method (400) as claimed in claim 1, wherein the at least one source is a network management system (NMS) (132) or an operations, administration, and management (OAM) (134), wherein the ERM (130) is connected to the NMS (132) with a first interface, and the ERM (130) is connected to the OAM (134) with a second interface.
4. The method (400) as claimed in claim 1, further comprising maintaining, by the ERM, a list of the plurality of parameters for each of the plurality of network services in a database (122), and wherein the plurality of parameters includes central processing unit (CPU) usage, memory utilization, network latency, and error rates.
5. The method (400) as claimed in claim 1, wherein the operational state of the at least one network service is one of a fault state, an available state, and a healthy state.
6. The method (400) as claimed in claim 1, further comprising employing, by the ERM (130), one or more corrective actions to bring the at least one current value corresponding to each of the plurality of parameters within a defined range, wherein the one or more corrective actions includes scaling resources, reallocating workloads, or triggering failover mechanisms.
7. The method (400) as claimed in claim 1, further comprising:
identifying, by the ERM (130), a plurality of trends and patterns corresponding to each of the plurality of network services by analyzing the determined operational condition of each network service; and
planning, by the ERM (130), at least one of a plurality of proactive maintenance activities based on the identified plurality of trends and patterns.
8. A system (108) for determining an operational condition of a plurality of network services, the system (108) comprising an event routing manager (ERM) (130), the ERM (130) comprising:
a processing unit (120) configured to initialize a timer associated with at least one network service of the plurality of network services;
a determining unit (116) configured to determine whether the initialized timer is equal to a configured timer corresponding to the at least one network service;
if the initialized timer is equal to the configured timer, the processing unit (120) is configured to establish at least one connection with at least one source to fetch information corresponding to the at least one network service;
the processing unit (120) is further configured to execute a process to:
extract at least one current value corresponding to each of a plurality of parameters associated with the at least one network service from the fetched information;
compare the extracted at least one current value with a predefined threshold value corresponding to each of the plurality of parameters associated with the at least one network service;
determine the operational condition of the at least one network service based on the comparison; and
trigger an alarm to a monitoring system (110) and log an event based on the determined operational condition of the at least one network service.
9. The system (108) as claimed in claim 8, wherein the processing unit is configured to reset the initialized timer after the process execution.
10. The system (108) as claimed in claim 8, wherein the at least one source is a network management system (NMS) (132) or an operations, administration, and management (OAM) (134), wherein the ERM (130) is connected to the NMS (132) with a first interface, and the ERM (130) is connected to the OAM (134) with a second interface.
11. The system (108) as claimed in claim 8, wherein a list of the plurality of parameters for each of the plurality of network services is maintained in a database (122), and wherein the plurality of parameters includes central processing unit (CPU) usage, memory utilization, network latency, and error rates.
12. The system (108) as claimed in claim 8, wherein the operational state of the at least one network service is one of a fault state, an available state, and a healthy state.
13. The system (108) as claimed in claim 8, wherein the processing unit (120) is configured to employ one or more corrective actions to bring the at least one current value corresponding to each of the plurality of parameters within a defined range, wherein the one or more corrective actions includes scaling resources, reallocating workloads, or triggering failover mechanisms.
14. The system (108) as claimed in claim 8, wherein
the processing unit (120) is configured to:
identify a plurality of trends and patterns corresponding to each of the plurality of network services by analyzing the determined operational condition of each network service; and
plan at least one of a plurality of proactive maintenance activities based on the identified plurality of trends and patterns.

Documents

Application Documents

# Name Date
1 202321076730-STATEMENT OF UNDERTAKING (FORM 3) [09-11-2023(online)].pdf 2023-11-09
2 202321076730-PROVISIONAL SPECIFICATION [09-11-2023(online)].pdf 2023-11-09
3 202321076730-FORM 1 [09-11-2023(online)].pdf 2023-11-09
4 202321076730-FIGURE OF ABSTRACT [09-11-2023(online)].pdf 2023-11-09
5 202321076730-DRAWINGS [09-11-2023(online)].pdf 2023-11-09
6 202321076730-DECLARATION OF INVENTORSHIP (FORM 5) [09-11-2023(online)].pdf 2023-11-09
7 202321076730-FORM-26 [28-11-2023(online)].pdf 2023-11-28
8 202321076730-Proof of Right [06-03-2024(online)].pdf 2024-03-06
9 202321076730-DRAWING [08-11-2024(online)].pdf 2024-11-08
10 202321076730-COMPLETE SPECIFICATION [08-11-2024(online)].pdf 2024-11-08
11 202321076730-FORM-5 [26-11-2024(online)].pdf 2024-11-26
12 Abstract-1.jpg 2024-12-27
13 202321076730-Power of Attorney [24-01-2025(online)].pdf 2025-01-24
14 202321076730-Form 1 (Submitted on date of filing) [24-01-2025(online)].pdf 2025-01-24
15 202321076730-Covering Letter [24-01-2025(online)].pdf 2025-01-24
16 202321076730-CERTIFIED COPIES TRANSMISSION TO IB [24-01-2025(online)].pdf 2025-01-24
17 202321076730-FORM 3 [24-02-2025(online)].pdf 2025-02-24