Abstract: ABSTRACT SYSTEM AND METHOD FOR PERFORMING OPERATIONS BY EVENT ROUTING MANAGER A system (108) and a method (500) for performing one or more operations by an event routing manager (ERM) (110) in a network (106). A receiving unit (208) receives a request corresponding to one or more operations from an interfacing unit (112) via a network interface. An execution unit (210) executes the request to perform the one or more operations. The one or more operations corresponds to at least one of the ERM (110), a subscriber, a publisher, and one or more events. The execution unit (210) generates a response based on performing the one or more operations corresponding to the request. A sending unit (212) sends the response to the interfacing unit (112) via the network interface. The network interface is an interface between the ERM and a user interface (UI). Ref. Fig. 5
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 PERFORMING OPERATIONS BY EVENT ROUTING MANAGER
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 wireless communication systems. More particularly, the present disclosure relates to a system and a method for performing operations on an event routing manager (ERM).
DEFINITION
[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 Routing Manager (ERM)” refers to an intermediary component that facilitates communication, routing service requests, and responses regarding network allocations and resource allocation and management.
[0005] The term “event” refers to a specific action that can trigger a network element, network entity, or system to take a particular action or reaction. For example, the event may include network traffic, system configuration changes, or security incidents.
[0006] The term “event request” refers to a set of instructions for an event. The event request includes specific parameters and data that instruct the ERM to perform one or more operations related to the event.
[0007] The term “network services” refers to the architectural and deployment paradigm where applications are composed of small, independent services deployed and managed within the virtualized environment. Each network service is designed to perform a specific business function and communicates with other network services over well-defined Application Programming Interfaces (APIs).
[0008] The term “Command Line Interface (CLI)” refers to a text-based interface used to interact with systems. Commands or command prompts are used to perform various tasks.
[0009] The term ‘Hypertext Transfer Protocol (HTTP) request’ refers to a message sent by a client to a server in the HTTP protocol to request resources or perform actions.
[0010] The expression “Operation and Maintenance (OAM)” refers to the processes and tools designed to automate, coordinate, and oversee the deployment, configuration, and operation of complex systems, services, and resources.
[0011] The term “event Sources” refers to the origins or triggers of events in the system, application, or network that can initiate some action or response.
[0012] The term “event publishers” refers to components or systems that generate and send events to be consumed by other systems or components (e.g., event subscribers).
[0013] The term “event subscriber” refers to components or systems that listen for and process events published by an event publisher. The event subscribers are responsible for responding to specific events of interest, often performing actions or triggering workflows based on the event data.
[0014] The term “Fault, Configuration, Accounting, Performance, and Security (FCAPS)” refers to a framework for network management that encompasses fault management, configuration management, accounting management, performance management, and security management.
[0015] The term “registration” refers to integrating and configuring an ERM with the OAM framework to ensure effective event management and system coordination.
[0016] The term “deregistration” refers to a process of removing or disassociating an ERM from the OAM framework.
[0017] The term “ERM Instances” refers to individual deployments or occurrences of the ERM within the system or network. Each instance of the ERM is a separate and functioning unit that manages and routes events according to its configuration and role within the system or network.
[0018] The term “performance counters” refers to counters for metrics used to monitor, measure, and assess the performance and health of the ERM system. These counters provide insight into various aspects of the operation of the ERM, such as its efficiency in handling events, resource utilization, and system responsiveness
[0019] These definitions are in addition to those expressed in the art.
BACKGROUND
[0020] 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.
[0021] Network function virtualization (NFV) is an architecture of communication network systems. The NFV uses a generic hardware platform and software adapted for the generic hardware platform. The NFV creates a much more flexible and dynamic network than a legacy communication network. Further, an event routing manager (ERM) of the NFV delivers events from event sources (for example, publishers/producers) to appropriate event services (for example, subscribers/consumers) in a dynamic event-driven system.
[0022] Currently, when the publisher/subscriber wants to change the data of an event, the publisher/subscriber has to make changes to an event sheet, which the ERM uses during the startup and therefore, restart the event. Furthermore, to perform seamless operations, fault, configuration, accounting, performance, and security (FCAPS) of the ERM must be monitored, and restricted parameters must be configured at runtime. There is no on-demand registration/deregistration of the ERM with operation and maintenance (OAM) service. Without a command line interface (CLI), developers and administrators may have limited control over individual network services and must rely on different tools and interfaces for each network service. This leads to monitoring, debugging, and troubleshooting issues. As many services interact with each other, the operational tasks (for example, scaling services, deploying updates, and managing configurations) require more manual effort and coordination. This makes network services architectures complex. Without proper access controls to the services, it may lead to security vulnerabilities or unauthorized changes. To manage network services, the developers and the administrators may have to rely on custom scripts and tools. However, these scripts increase the maintenance burden and may not offer the same level of consistency and reliability.
[0023] There is, therefore, a need in the art to provide a method and a system that can overcome the shortcomings of the existing prior arts.
SUMMARY
[0024] In an exemplary embodiment, a system for performing one or more operations by an event routing manager (ERM) in a network, the system includes a receiving unit configured to receive a request corresponding to one or more operations from an interfacing unit via a network interface. The system also includes an execution unit configured to execute the request to perform the one or more operations, where the one or more operations corresponds to at least one of the ERM, a subscriber, a publisher, and one or more events, and generate a response based on performing the one or more operations corresponding to the request. The system also includes a sending unit configured to: send the response to the interfacing unit via the network interface.
[0025] In some embodiments, the network interface is an interface between the ERM and a user interface (UI).
[0026] In some embodiments, the one or more operations corresponding to the ERM include at least one of re-registration of the ERM to an operation and maintenance (OAM), deregistration of the ERM from the OAM, forced registration of the ERM to the OAM, getting one or more counters from the ERM, resetting the one or more counters in the ERM, obtaining details of a defined event, obtaining count of all events published in the ERM, obtaining names of all events published in the ERM, viewing of one or more archived events, and removing the one or more archived events.
[0027] In some embodiments, the one or more operations corresponding to the events comprises obtaining details of the defined event, updating acknowledgment for the one or more events, updating notification enablement for the one or more events, and updating deferred enablement for the one or more events.
[0028] In some embodiments, the one or more operations corresponding to the subscriber comprises obtaining one or more events subscribed by one or more network services of the subscriber, wherein the one or more operations corresponding to the publisher comprises one or more events published by one or more network services of the publisher, adding the publisher to one or more existing events.
[0029] In some embodiments, the response includes at least one of details corresponding to the one or more events, a success response corresponding to the one or more operations and a failure response corresponding to the one or more operations.
[0030] In another exemplary embodiment, a method for performing one or more operations by an event routing manager (ERM) in a network, the method includes receiving, by a receiving unit, a request corresponding to one or more operations from an interfacing unit via a network interface, executing, by an execution unit, the request to perform the one or more operations, where the one or more operations corresponds to at least one of the ERM, a subscriber, a publisher, and one or more events, and generating, by the execution unit, a response based on performing the one or more operations corresponding to the request. The method also includes sending, by a sending unit, the response to the interfacing unit via the network interface.
[0031] In yet another exemplary embodiment, a user equipment is communicatively coupled to a system, the user equipment is configured to receive one or more commands selected by the user via a network interface, receive one or more parameters corresponding to the one or more commands selected by the user, generate a request based on the received one or more commands and the one or more received parameters, and send the generated request to the system via an interfacing unit.
[0032] 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
[0033] Some of the objectives of the present disclosure, which at least one embodiment herein satisfies, are as follows:
[0034] An objective of the present disclosure is to provide a system and a method for facilitating communication between an event routing manager (ERM) and command line interface (CLI) via an EM_CL interface, which is used to monitor and view all events registered using respective commands (such as to get event details, to get event count, to get all event names, etc.) as per the requirement without restarting an application.
[0035] Another objective of the present disclosure is to fetch all events related to a specific publisher or subscriber and add the publisher to any event in run time without restarting the application.
[0036] Yet another objective of the present disclosure is to provide fault tolerance during request failure.
[0037] Yet another objective of the present disclosure is to provide an EM_CL interface that operates in a high availability mode. If one ERM instance goes down during request processing, the next available instance will handle a request.
[0038] Yet another objective of the present disclosure is to provide async event-based implementation to utilize the EM_CL interface efficiently.
[0039] 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
[0040] 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.
[0041] FIG. 1 illustrates an exemplary network architecture for implementing a system comprising an event routing manager (ERM), in accordance with an embodiment of the present disclosure.
[0042] FIG. 2A illustrates an exemplary system architecture for implementing an EM_CL interface for facilitating communication between an interfacing unit and the ERM, in accordance with an embodiment of the present disclosure.
[0043] FIG. 2B illustrates an exemplary block diagram of the system comprising the ERM, in accordance with an embodiment of the present disclosure.
[0044] FIG. 2C illustrates another exemplary system architecture for facilitating communication between the interfacing unit and the ERM, in accordance with an embodiment of the present disclosure.
[0045] FIG. 3 illustrates an exemplary flow diagram for executing an event request by the ERM, in accordance with an embodiment of the present disclosure.
[0046] FIG. 4 illustrates an exemplary architecture comprising a user interface layer, in accordance with an embodiment of the present disclosure.
[0047] FIG. 5 illustrates an exemplary flow diagram of a method for performing one or more operations by the ERM in the network, in accordance with an embodiment of the present disclosure.
[0048] FIG. 6 illustrates an example computer system in which or with which the embodiments of the present disclosure may be implemented.
[0049] The foregoing shall be more apparent from the following more detailed description of the disclosure.
LIST OF REFERENCE NUMERALS
100 Network architecture
102 User(s)
104 User Equipments (UEs)
106 Network
108 System
110 Event routing manager (ERM)
112 Interfacing Unit
200A System Architecture
200B Block Diagram
202 Processor(s)
204 Memory
206 Interface(s)
208 Receiving Unit
210 Execution Unit
212 Sending Unit
216 Database (DB)
200C System Architecture
300 Flow Diagram
302 Rules
400 Architecture
500 Flow Diagram
600 Computer System
610 External Storage Device
620 Bus
630 Main Memory
640 Read-only Memory
650 Mass Storage Device
660 Communication Ports
670 Processor
DETAILED DESCRIPTION
[0050] 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.
[0051] 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.
[0052] 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.
[0053] 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.
[0054] 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.
[0055] 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.
[0056] 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.
[0057] 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.
[0058] Network function virtualization (NFV) is an architecture of communication network systems. The NFV uses a generic hardware platform and software adapted for the generic hardware platform. The NFV creates a much more flexible and dynamic network than a legacy communication network. Further, an event routing manager (ERM) of the NFV delivers events from event sources (for example, publishers/producers) to appropriate event services (for example, subscribers/consumers) in a dynamic event-driven system.
[0059] Currently, when the publisher/subscriber wants to change the data of an event, the publisher/subscriber has to make changes to an event sheet, which the ERM uses during the startup and restart of the event. Furthermore, to perform seamless operations, fault, configuration, accounting, performance, and security (FCAPS) of the ERM must be monitored, and restricted parameters must be configured at runtime. There is no on-demand registration/deregistration of the ERM with operation and maintenance (OAM) service. Without a command line interface (CLI), developers and administrators may have limited control over individual network services and must rely on different tools and interfaces for each network service. This leads to monitoring, debugging, and troubleshooting issues. As many services interact with each other, the operational tasks (for example, scaling services, deploying updates, and managing configurations) require more manual effort and coordination. This makes network services architectures complex. Without proper access controls to the services, it may lead to security vulnerabilities or unauthorized changes. To manage network services, the developers and the administrators may have to rely on custom scripts and tools. However, these scripts increase the maintenance burden and may not offer the same level of consistency and reliability.
[0060] There is, therefore, a need in the art to provide a method and a system that can overcome the shortcomings of the existing prior arts.
[0061] The present disclosure aims to overcome the above-mentioned and other existing problems in this field of technology by providing a system and a method for facilitating communication between an event routing manager (ERM) and command line interface (CLI) via an EM_CL interface which is used to monitor and view all events registered using respective commands (such as a get event details, get event count, get all event names, etc.) as per the requirement without restarting an application. The system is configured to support an asynchronous event-based implementation for utilizing the EM_CL interface efficiently.
[0062] Hereinafter, exemplary embodiments of the present disclosure will be described with reference to the accompanying drawings FIGS. 1-6.
[0063] FIG. 1 illustrates an exemplary network architecture (100) for implementing a system (108) comprising an event routing manager (ERM) (110), in accordance with an embodiment of the present disclosure.
[0064] As illustrated in FIG. 1, the network architecture (100) 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 be 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 collectively be referred to as the UE (104). Although only three UE (104) are depicted in FIG. 1, however, any number of the UE (104) may be included without departing from the scope of the ongoing description.
[0065] 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 are 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 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.
[0066] 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.
[0067] Referring to FIG. 1, 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 (100) 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.
[0068] 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 Public-Switched Telephone Network (PSTN), a cable network, a cellular network, a satellite network, a fiber optic network, or some combination thereof.
[0069] The system (108) may include the ERM (110). The ERM (110) communicates with an interfacing unit (112) via a network interface. In examples, the interfacing unit (112) may be a command line interface (CLI). In an aspect, the network interface is an interface between the ERM (110) and a user interface (e.g., CLI). Further, the network interface is an interface between the ERM (110) and the interfacing unit (112). In an example, the network interface may be an event routing manager_command line (EM_CL) interface. The interfacing unit (112) may send a request (for example, a Hypertext Transfer Protocol (HTTP) request command for get event details) to the ERM (110) via the EM_CL interface. In an aspect, the request comprises command selected by the user and the parameters selected by the user. The request may be provided by the user (102). The ERM (110) may execute the request after receiving the request from the interfacing unit (112). To execute the request, the ERM (110) may obtain the data required for the request from a database. All the events are registered using the respective command. The ERM (110) is configured to store all the events registered using the respective command and the one or more operations corresponding to the respective command in the database. For example, the command may be command for getting event details. The ERM (110) may execute the request to perform one or more operations and generate a response (for example, a response having data related to the event details published in the ERM (110) after executing the request. The ERM (110) may send the response to the interfacing unit (112). The interfacing unit (112) may display the response to the user (102). In an embodiment, the UE (104) is communicatively coupled with the system (108). The UE is configured to receive one or more commands selected by the user. The UE is further configured to receive one or more parameters corresponding to the one or more commands selected by the user. In an example, the user selects command (e.g., get event counts). The user selects the parameters corresponding to the command such as start date/time (e.g., 23rd Oct/2 PM), end date/time (e.g., 24th Oct/2PM), event type (e.g., registration of users in 5G the network), event identifier (ID) (e.g., Event123). The UE is configured to generate a request based on the received one or more commands and the one or more received parameters. In an example, the request is generated for the command (e.g., get event details of registration of users in the 5G network) The UE is configured to send the generated request to the system via the interfacing unit (112). The interfacing unit (112) sends the request to the ERM (110) via the network interface (e.g., EM_CL interface).
[0070] Although FIG. 1 shows exemplary components of the network architecture (100), in other embodiments, the network architecture (100) may include fewer components, different components, differently arranged components, or additional functional components than depicted in FIG. 1. Additionally, or alternatively, one or more components of the network architecture (100) may perform functions described as being performed by one or more other components of the network architecture (100).
[0071] FIG. 2A illustrates an exemplary system architecture (200A) for implementing an EM_CL interface for facilitating communication between the interfacing unit (112) and the ERM (110), in accordance with an embodiment of the present disclosure.
[0072] In an aspect, the ERM (110) may communicate with the interfacing unit (112) via an EM_CL interface. The EM_CL interface may execute any operation on the ERM (110) using the interfacing unit (112). The operation may be predefined at the ERM (110) and executed using the EM_CL interface. The EM_CL interface may monitor performance counters. In an aspect, the performance counters are used to monitor the performance of the system (108). The performance counters are used to track performance metrics and diagnose issues related to the performance, reliability, and efficiency of event routing. The performance counters track the number of event requests received, the number of events processed, and the number of event responses sent. Further, the performance counters are used to find various parameters but are not limited to event throughput (number of events received, event executing rate, etc.), event metrics (e.g., event failure, error rate, etc.), event executing statistics (e.g., success rate, failed events, etc.).
[0073] In an aspect, the EM_CL interface may perform registration/deregistration of ERM (110) with operation and maintenance (OAM). In examples, all events may be registered using a respective command. The ERM (110) may store details of all the registered events in its database. In an aspect, all the registered events may be monitored and viewed whenever required using the respective command without restarting the application through the EM_CL interface. The EM_CL interface may de-register any ERM instance from the current OAM and register that ERM instance with some other OAM. The EM_CL interface may verify whether any specific network service has subscribed to a particular event. 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.
[0074] In an aspect, all connected component information, such as OAM, can be determined using the EM_CL interface. In an implementation, for any operation, a Representational State Transfer Application Programming Interface (REST API) is a medium of communication over hypertext transfer protocol (HTTP), like the way client and server communicate. All these information exchanges are performed in file format.
[0075] The ERM (110) may execute separate commands for different functions (for example, register, deregister, update, set configuration, etc.). Examples of commands that the ERM (110) may execute through the interfacing unit (112) include but are not limited to, “getEventDetails” command, “getEventCount” command, “getAllEventNames” command, “getEventsBySubscriber” command, “getEventsByPublisher” command, “updateEventAck” command, “isMicroserviceSubscribedToEvent” command, “addPublisherToEvent” command, “getAllERMCounters” command, “resetAllCounters” command, “updateIsNotificationEnable” command, “updateIsDeferredEnable” command, “viewArchivedEvents” command, “removeArchivedEvents” command, “deRegisterOam” command, “reRegisterOam” command, and “doForcefulReregistration” command.
[0076] In examples, the get event details command is used to get details of specified events. The get event count command is used to get a count of all events published in the ERM (110). The get all event names command is used to get the name of all events published in the ERM (110). The get subscribed events By Subscriber command is used to get all events subscribed to by the network service. The get published events by publisher command is used to get all events published by the network service. The updation of event acknowledgment command is used to update the acknowledgments of the event. Detecting microservice subscribed to event command checks whether the network service has subscribed to the event. The add publisher to event command adds a publisher to an existing event. The get all erm counters command is used to get all the counters in the ERM (110). The reset all counters command is used to reset all the counters in the ERM (110). The update notification enable command is used to update the notification enable for the event. The update deferred enable command is used to update the deferred enable for the event. In an aspect, the deferred enable is used to store all failed request if subscriber service unavailable and retry the event once service available. The view archived events command is used to view all the archived events. The removal of archived events command is used to remove all archived events. The deregistration of the ERM (110) to the OAM command is used to de-register the ERM (110) from the OAM. The reregistration of the ERM (110) to the OAM command is used to re-register the ERM (110) to the OAM. The forceful reregistration command is used to register the ERM (110) to the OAM.
[0077] In an implementation, a user (102) may run or operate the interfacing unit (112). The user (102) may access the interfacing unit (112) with login details. The user (102) may log in to the interfacing unit (112) and load commands for the ERM (110). The user (102) may define the command that needs to be run from the interfacing unit (112) with the required inputs. The interfacing unit (112) may create an HTTP request and send the HTTP request to the ERM (110) through the EM_CL interface. The ERM (110) may perform the operation based on the HTTP request. After performing the operation, the ERM (110) may send the HTTP response accordingly to the interfacing unit (112). At least one of success response and failure response may be displayed on the interfacing unit (112) for the user (102)
[0078] In an aspect, the EM_CL interface may be used for fault tolerance during any request failure. When one ERM instance goes down due to some issue (for example, network failure or network overload) during request processing or executing, the EM_CL interface may cause the next available instance to be used for the request. In this way, the EM_CL interface works in a high availability mode.
[0079] Although FIG. 2A shows exemplary components of the system architecture (200A), in other embodiments, the system architecture (200A) may include fewer components, different components, differently arranged components, or additional functional components than depicted in FIG. 2A. Additionally, or alternatively, one or more components of the system architecture (200A) may perform functions described as being performed by one or more other components of the system architecture (200A).
[0080] FIG. 2B illustrates an exemplary block diagram (200B) of the system (108) comprising the ERM (110), in accordance with an embodiment of the present disclosure.
[0081] Referring to FIG. 2B, in an embodiment, the system (108) may include one or more processor(s) (202). The one or more processor(s) (202) 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) (202) may be configured to fetch and execute computer-readable instructions stored in a memory (204) of the system (108). The memory (204) 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 (204) 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.
[0082] In an embodiment, the system (108) may include an interface(s) (206). The interface(s) (206) 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) (206) may facilitate communication through the system (108). The interface(s) (206) may also provide a communication pathway for one or more components of the system (108). The system may include the ERM (110) and a database (216). The ERM (110) comprises a receiving unit (208), an execution unit (210), and a sending unit (212).
[0083] The receiving unit (208) is configured to receive a request corresponding to one or more operations from the interfacing unit (112) (e.g., command line interface (CLI)) via the network interface (e.g., EM_CL interface). In an aspect, the user selects command and one or more parameters for the operation to be performed. The request is generated based on selected command and the one or more parameters selected by the user. In an aspect, the request is generated on the user equipment. In another aspect, the request is generated on the interfacing unit (112).
[0084] The execution unit (210) is configured to execute the request to perform the one or more operations. The one or more operations corresponds to at least one of the ERM (110), a subscriber, a publisher and one or more events. In an aspect, the one or more operations corresponding to the ERM include at least one of re-registration of the ERM to the OAM, deregistration of the ERM from the OAM, forced registration of the ERM to the OAM, getting one or more counters in the ERM, resetting the one or more counters in the ERM, obtaining details of a defined event, obtaining count of all events published in the ERM, obtaining names of all events published in the ERM, viewing the one or more archived events and removing the one or more archived events. In an aspect, the request for operation such as re-registration of the ERM to the OAM is used to perform re-registration of the ERM to the OAM. The re-registration of the ERM to the OAM is performed due to regulatory compliance, system upgrades, security enhancements, operational changes, changes in network architecture, etc. In an aspect, the request for operation such as deregistration of the ERM from the OAM is used to remove the ERM from the OAM. The deregistration is performed due to operational changes, performance issues, compliance issues, etc. In an aspect, the request for operation such as forced registration of the ERM to the OAM is used to register the ERM with the OAM without the usual procedural compliance, often due to urgent operational needs, system restart, resource constraints, etc. In an aspect, the request for operation such as getting one or more counters in the ERM is used to retrieve metrics or statistics related to the operations/events performed by the ERM. The counters provide data corresponding to the operation/event processing, such as the number of events routed, processing times, error rates, or system health indicators, etc. In an aspect, the request for operation such as resetting the one or more counters in the ERM is used to reset or clear the counters in the ERM after execution of operations/events. In an aspect, the request for operation such as obtaining details of a defined event is used to obtain or retrieve details corresponding to a specific event. The details of the specific or defined event includes event name, event id, event type, event status, timestamp, source of the event, etc. In an example, the specific event (e.g., call setup request in cellular network). The details of the call setup request in the cellular network includes event name (call setup request), caller number, receiver number, location area code, status, cell ID, user equipment type (e.g., smart phone), network type (4G or 5G). In an aspect, the request for operation such as obtaining count of all events published in the ERM is used to determine the count of events processed over a defined time period. In an example, count of event published in the ERM is 800 in the time period = 2PM to 3PM. In an aspect, the request such as obtaining names of all events published in the ERM is used to determine obtain the names of all events published in the ERM to understand the types of events the ERM is handling. In an example, the event names include user login, user logout, data processing error, threshold exceed, system update, etc. In an aspect, the request for operation such as viewing one or more archived events is used to access data corresponding to the events that have already been processed. In an aspect, the request for operation such as removing the one or more archived events is used to delete or remove events that are no longer needed from the database. This helps maintain the database and ensures that only relevant data is retained.
[0085] In an aspect, the one or more operations corresponding to the events comprises obtaining details of the defined event, updating acknowledgment for the one or more events, updating notification enablement for the one or more events, updating deferred enablement for the one or more events, viewing one or more archived events, and removing the one or more archived events. In an aspect, the request for operation such as obtaining details of the defined event is used to obtain or retrieve details corresponding to a specific event. The details of the specific or defined event includes event name, event id, event type, event status, timestamp, source of the event, etc. In an aspect, the request for operation such as updating acknowledgment for the one or more events is used to update or modify the status of events to indicate that the events have been received and processed appropriately. In an aspect, the request for an operation, such as updating notification enablement for one or more events, is used to set or reset the notification enablement flag associated with those events and their notifications for a specific service. If the notification enable flag is set to true, notifications are triggered when the event occurs (e.g., subscribers will be notified whenever the event occurs). Conversely, if the notification enable flag is set to false, no notifications are sent even when the event occurs. This provides granular control over which the events generate notifications. In an aspect, the request for operation, such as updating deferred enablement for one or more events, is used to store all failed event requests if the service is unavailable and retry the event request once the service is available again.
[0086] In an aspect, the one or more operations corresponding to the subscriber comprises obtaining one or more events subscribed by one or more network services of the subscriber. The operation such as obtaining one or more events subscribed by one or more network services of the subscriber is used to retrieve the events that the subscriber's network services have subscribed to.
[0087] In an aspect, the one or more operations corresponding to the publisher comprises obtaining one or more events published by one or more network services of the publisher and adding the publisher to one or more existing events. In an aspect, the request for operation such as obtaining one or more events published by one or more network services of the publisher is used to obtain or retrieve the events that the publisher’s network services have published. In an aspect, the request for operation such as adding the publisher to one or more existing events is used to add the publisher in the existing events. In an aspect, the operation such as removing the publisher is used to remove the added publisher from the existing events.
[0088] In an aspect, the request for operation such as checking whether the one or more network services of one of the publisher, the subscriber, the ERM is subscribed to the event or not to check event subscription status of the one or more network services.
[0089] Further, the request comprises the command selected by the user. The at least one command includes, but are not limited to, get event details command, get event count command, get all event names command, get events by subscriber command, get events by publisher command, update event ack command, is microservice subscribed to event command, add publisher to event command, get all erm counters command, reset all counters command, update is notification enable command, update is deferred enable command, view archived events command, remove archived events command, deregister to OAM command, reregister to OAM command, and do forceful reregistration command.
[0090] In an implementation, the execution unit (210) is further configured to perform the one or more operations. The execution unit (210) may determine whether the one or more operations corresponding to the request have been successfully completed. Based on performing the one or more operations corresponding to the request, the execution unit (210) generates a response. The response includes at least one of details corresponding to the one or more events, a success response corresponding to the one or more operations, and a failure response corresponding to the one or more operations. In an example, the request corresponding to operation such as obtaining details of a defined event is used to obtain or retrieve details corresponding to a specific event. The details of the specific or defined event include event name, event id, event type, event status, timestamp, source of the event, etc. For example, the specific event (e.g., call setup request in cellular network). The details of the call setup request in the cellular network include event name (call setup request), caller number, receiver number, location area code, status, cell ID, user equipment type (e.g., smart phone), network type (4G or 5G).
[0091] The sending unit (212) is configured to send the response and relevant data to the interfacing unit (112) via the network interface (i.e., the EM_CL interface). The sending unit (212) is further configured to send a success response to the interfacing unit (112) if the one or more operations are successfully completed. The sending unit (212) is further configured to send a failure response to the interfacing unit (112) if the one or more operations are not successfully completed. The data related to the event includes event type, event ID, user ID, event timestamp, event status, etc.
[0092] Further, the execution unit (210) is configured to verify whether any specific network service has subscribed to a particular event via the network interface. In an aspect, the execution unit (210) verifies whether the specific network service has subscribed to a particular event by checking if that network service is set up to receive notifications or messages for that event type. The execution unit (210) is configured to add one of a plurality of publishers to one event of a plurality of events in run time without restarting an application via the EM_CL interface. In an aspect, adding one publisher to one event involves configuring/associating the publisher to one of the plurality of events. In an example, the publisher (e.g., base station001) is configured to the event (e.g., Location Update for 5G users).
[0093] In an aspect, the EM_CL interface is used to add or remove the publishers or the subscribers at runtime.
[0094] The execution unit (210) is configured to perform on-demand registration/deregistration with the OAM via the network interface. In an aspect, the execution unit (210) performs registration/deregistration of the ERM (110) to the OAM based on the requirements to ensure that event routing and management are handled correctly. The registration of ERM (110) involves integrating the ERM (110) into the OAM to enable it to manage and route events effectively. The deregistration of the ERM (110) consists of removing or updating the integration of the ERM (110) when it is no longer needed or is being replaced.
[0095] In an embodiment, the system (108) includes the database (216) that includes data that may be either stored or generated as a result of functionalities implemented by any of the components of the processor (202). The database (216) is configured to store the data received from the receiving unit (208), the execution unit (210) and the sending unit (212). The program instructions include a program that implements the system (108) for performing request processing or executing using an interface in accordance with embodiments of the present disclosure and may implement other embodiments described in this specification. The database (216) 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 nonvolatile memory, such as Read Only Memory (ROM), erasable programmable ROM, flash memories, hard disks, optical disks, and magnetic tapes. In an aspect, the database (216) may be implemented in the ERM (110). The ERM (110) is configured to store all events registered using a respective command in the database (216).
[0096] Although FIG. 2B shows exemplary components of the system (108), in other embodiments, the system (108) may include fewer components, different components, differently arranged components, or additional functional components than depicted in FIG. 2B. Additionally, or alternatively, one or more components of the system (108) may perform functions described as being performed by one or more other components of the system (108).
[0097] FIG. 2C illustrates another exemplary system architecture (200C) for facilitating communication between the interfacing unit (112) and the ERM (110), in accordance with an embodiment of the present disclosure.
[0098] According to an implementation, the ERM (110) may communicate with the interfacing unit (112) through an EM_CL interface (not shown in FIG. 2C). All the CLI-related operations may be performed at the ERM (110). The ERM (110) may interact with the database (216). The database (216) may include indexed document data. In an aspect, the ERM (110) may interact with the database (216) to create/update/delete/get the data from the database (216).
[0099] The interfacing unit (112) may send an update event request to the ERM (110). The ERM (110) may update event details upon receiving the updated event request. The updated event details may be stored in the database (216). The ERM (110) may send a response to the interfacing unit (112) after updating event details.
[00100] Furthermore, the interfacing unit (112) may send a query event request to the ERM (110). The query event request may display scheduled and completed events for selected clients. The ERM (110) may get the event details from the database (216) on receiving the query event request. The ERM (110) may send a response (for example, the response including details related to the event) to the interfacing unit (112).
[00101] Although FIG. 2C shows exemplary components of the system architecture (200C), in other embodiments, the system architecture (200C) may include fewer components, different components, differently arranged components, or additional functional components than depicted in FIG. 2C. Additionally, or alternatively, one or more components of the system architecture (200c) may perform functions described as being performed by one or more other components of the system architecture (200C).
[00102] FIG. 3 illustrates an exemplary flow diagram (300) for executing an event request by the ERM (110), in accordance with an embodiment of the present disclosure.
[00103] The ERM (110) may communicate with the interfacing unit (112) through the EM_CL interface. The interfacing unit (112) may send an event request (for example, an HTTP request command for “get event count”) to the ERM (110) via the EM_CL interface.
[00104] The ERM (110) may process or execute the event request after receiving the request from the interfacing unit (112). To execute the event request, the ERM (110) may obtain the data required for the request from the database (216). All the events are registered using the respective command. The ERM (110) is configured to store all the events registered using the respective command in the database (216). For example, the command may be “get event count” command. The ERM (110) may execute the event request using one or more rules (302). The one or more rules (302) may be configured to function as the execution unit (210). In an aspect, the one or more rules (302) refers to the set of rules and executes that direct how events are managed, routed, and processed based on requirements. Furthermore, the one or more rules (302) and the ERM (110) may be in communication with each other. The ERM (110) may generate an event response (for example, a response having data related to the count of all events published in the ERM (110)) after executing the event request. The ERM (110) may send the event response to the interfacing unit (112).
[00105] FIG. 4 illustrates an exemplary architecture (400) comprising a user interface layer (402), in accordance with an embodiment of the present disclosure.
[00106] As depicted in FIG. 4, the user interface layer (402) may comprise several interconnected modules that work together to enable efficient resource allocation and management. The interconnected modules may include a user interface layer (402), NFV and software-defined networking (SDN) design functions (404), platform foundation services (406), platform core services (408), a platform operation, administration, and maintenance manager (410), and platform resource adapters and utilities (412).
[00107] The user interface layer (402) may serve as a primary point of interaction for the network operators and the network administrators. Through the user interface layer (402), various parameters associated with the ERM (110) may be configured and adjusted based on specific requirements. These parameters may include a number of network services associated with ERMs, a number of ERMs that may be deployed simultaneously, and other relevant settings.
[00108] The NFV and SDN design functions (404) may work in conjunction with the platform core services (408) to analyze and route the service requests received by the ERM (110). The modules may be responsible for determining the target network service within the user interface layer (402) based on a type of resource allocation required. The modules may utilize a mapping of service request types to target network services maintained by the ERM (110) to ensure accurate routing. The NFV and SDN design functions (404) may include a virtualized network function (VNF) lifecycle manager (compute) that is a specialized component focused on managing the compute resources associated with VNF throughout their lifecycle. The NFV and SDN design functions (404) may include a VNF catalog that is a repository that stores and manages metadata, configurations, and templates for VNF, facilitating their deployment and lifecycle management. The NFV and SDN design functions (404) may include network services catalog, network slicing and service chaining manager, physical and virtual resource manager and CNF lifecycle manager. The network services catalog serves as a repository for managing and storing detailed information about network services, including their specifications and deployment requirements. The network slicing & service chaining manager is responsible for orchestrating network slices and service chains, ensuring efficient allocation and utilization of network resources tailored to various services. The physical and virtual resource manager oversees both physical and virtual resources, handling their allocation, monitoring, and optimization to ensure seamless operation across the network infrastructure. The CNF lifecycle manager manages the complete lifecycle of the CNF, including onboarding, instantiation, scaling, monitoring, and termination, thereby facilitating the efficient deployment and operation of network functions in a cloud-native environment.
[00109] The platform foundation services (406) may support an asynchronous event-based executing model implemented by the ERM (110), enabling concurrent handling of multiple service requests. The platform foundation services (406) may include network services elastic load balancer, identity & access manager, command line interface (CLI), central logging manager, and the ERM (110). The network services elastic load balancer ensures that incoming traffic is evenly distributed across multiple network services, enhancing performance and availability. The identity & access manager handles user identity management and access control, enforcing permissions and roles to secure resources and services. The CLI offers a text-based method for users to interact with the platform, enabling command execution and configuration management. The central logging manager consolidates log data from various system components, providing a unified view for effective monitoring, troubleshooting, and data analysis.
[00110] The platform core services (408) are central to the processing and fulfillment of the service requests (i.e., at least one service request). The platform core services (408) may work together to allocate network slices, manage virtualized network functions, and orchestrate the underlying infrastructure resources based on each of the at least one service request routed by the ERM (110). The platform core services (408) may include NFV infrastructure monitoring manager, assurance manager, performance manager, policy execution engine, capacity monitoring manager, release management repository, configuration manager & golden configuration template (GCT), NFV platform decision analytics platform, Not Only SQL database (NoSQL DB), platform schedulers & jobs, VNF backup & upgrade manager, and network service auditor. The NFV infrastructure monitoring manager tracks and oversees the health and performance of NFV infrastructure. The assurance manager ensures service quality and compliance with operational standards. The performance manager monitors system performance metrics to optimize efficiency. The policy execution engine enforces and executes policies across the platform. The capacity monitoring manager tracks resource usage and forecasts future needs. The release management repository manages software releases and version control. The configuration manager handles system configurations, ensuring consistency and automation. The GCT provides centralized oversight and management of platform operations. The NFV platform decision analytics platform utilizes data analytics to support decision-making. The NoSQL DB stores unstructured data to support flexible and scalable data management. The platform schedulers and jobs automate and schedule routine tasks and workflows. The VNF backup and upgrade manager oversees the backup and upgrading of VNFs. The network service auditor ensures the integrity and compliance of network services across the platform.
[00111] The platform operation, administration, and maintenance manager (410) may oversee operational aspects of the system (108). The platform operation, administration, and maintenance manager (310) may be responsible for implementing a load-balancing mechanism used by the ERM (110) to distribute the service requests across multiple instances of the network services.
[00112] The platform resource adapters and utilities (412) may provide necessary tools and interfaces for interacting with an underlying network infrastructure, i.e., the NFV architecture. These components may be crucial in translating the service requests into actionable commands for the resources (also referred to as the network resources) allocation and management. The platform resource adapters and utilities (412) may work closely with the platform core services (408) to ensure that allocated resources meet specified requirements. Together, these modules create a cohesive and efficient system for managing resource allocation. The platform resource adapters and utilities (412) may include platform external API adapter and gateway, generic decoder, and indexer, orchestration adapter, API adapter, and NFV gateway. The platform external API adapter and gateway facilitates seamless integration with external APIs and manages data flow between external systems and the platform. The generic decoder and indexer processes and organizes data from various formats such as XML, comma-separated values (CSV), and JSON, ensuring compatibility and efficient indexing. The orchestration adapter manages interactions with clusters, enabling container orchestration and scaling. The API adapter interfaces with services, allowing integration and management of cloud resources. The NFV gateway acts as a bridge for NFV communications, coordinating between NFV components and other platform elements.
[00113] The ERM (110) may interact with all these modules to facilitate an end-to-end process of a service request handling. The ERM (110) may receive the service requests through the user interface layer (402), utilize the NFV and SDN design functions (404) for the service requests analysis, leverage the platform core services (408) for the service requests fulfillment and use the platform resource adapters and utilities (412) for actual resources allocation for each of the service requests. The platform operations, administration and maintenance manager (410) may oversee this entire process, ensuring efficient operation and fault tolerance. This integrated approach may enable the system (108) to efficiently manage a complex process of resource allocation and management, potentially providing a flexible and responsive system capable of meeting diverse service requirements in a dynamic network environment.
[00114] FIG. 5 illustrates an exemplary flow diagram of a method (500) for performing one or more operations by the ERM (110) in the network (106), in accordance with an embodiment of the present disclosure.
[00115] At step (502), the method (500) includes receiving, by the receiving unit (208), a request corresponding to one or more operations from an interfacing unit (112) (e.g., command line interface) via the network interface. The network interface is an interface between the event routing manager_user interface (EM_UI). The network interface may be an EM_CLI interface. In an aspect, the request comprises a command and one or more parameters, selected by the user, for the operation to be performed.
[00116] At step (504), the method (500) includes executing, by an execution unit (210), the request to perform the one or more operations. In an aspect, the execution unit (210) processes the request to determine the command and the one or more parameters from the request. Based on the command and the one or more parameters, the execution unit (210) determines the operation to be performed. In an aspect, the one or more operations corresponds to the ERM (110), a subscriber, a publisher, one or more events. The execution unit (210) performs the determined operation. The one or more operations corresponding to the ERM include at least one of re-registration of the ERM to an operation and maintenance (OAM), deregistration of the ERM from the OAM, forced registration of the ERM to the OAM, getting one or more counters in the ERM, resetting the one or more counters in the ERM, obtaining details of a defined event, obtaining count of all events published in the ERM, obtaining names of all events published in the ERM, viewing of one or more archived events, and removing the one or more archived events. The one or more operations corresponding to the events comprises obtaining details of the defined event, updating acknowledgment for the one or more events, updating notification enablement for the one or more events, and updating deferred enablement for the one or more events. The one or more operations corresponding to the subscriber comprises obtaining one or more events subscribed by one or more network services of the subscriber. The one or more operations corresponding to the publisher comprises one or more events published by one or more network services of the publisher, adding the publisher to one or more existing events. In an aspect, the database (216) stores the commands corresponding to the one or more operations. The database (216) further stores the one or more operations corresponding to the ERM, the subscriber, the publisher and the one or more events.
[00117] At step (506), the method (500) includes generating, by the execution unit (210), a response based on performing the one or more operations corresponding to the request. In an aspect, after performing the operation, the execution unit (210) generates the response. The response includes at least one of details corresponding to the one or more events, a success response corresponding to the one or more operations and a failure response corresponding to the one or more operations. The execution unit (210) is configured to determine whether the one or more operations corresponding to the request have been successfully completed. Upon determining successful completion of the one or more operations corresponding to the request, the success response is sent to the interfacing unit (112). Upon determining failure in performing the one or more operations, the failure response is sent to the interfacing unit (112). Upon determining the request corresponds to the one or more events, the details corresponding to the one or more events are sent to the interfacing unit (112).
[00118] At step (508), the method (500) includes sending, by the sending unit (212), the response to the interfacing unit (112) via the network interface. The network interface is an interface between the ERM (110) and the user interface (e.g., CLI). The network interface may be EM_CL interface. The response (e.g., the success response, the failure response and the details corresponding to the one or more events) is displayed to the user via the interfacing unit (112).
[00119] FIG. 6 illustrates an example computer system in which or with which the embodiments of the present disclosure may be implemented.
[00120] As shown in FIG. 6, the computer system (600) may include an external storage device (610), a bus (620), a main memory (630), a read-only memory (640), a mass storage device (650), a communication port(s) (660), and a processor (670). A person skilled in the art will appreciate that the computer system (600) may include more than one processor and communication ports. The processor (670) may include various modules associated with embodiments of the present disclosure. The communication port(s) (660) 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 ports(s) (660) may be chosen depending on a network, such as a Local Area Network (LAN), Wide Area Network (WAN), or any network to which the computer system (600) connects.
[00121] In an embodiment, the main memory (630) may be Random Access Memory (RAM), or any other dynamic storage device commonly known in the art. The read-only memory (640) may be any static storage device(s) e.g., but not limited to, a Programmable Read Only Memory (PROM) chip for storing static information e.g., start-up or basic input/output system (BIOS) instructions for the processor (670). The mass storage device (650) may be any current or future mass storage solution, which can be used to store information and/or instructions. Exemplary mass storage solutions include, but are 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).
[00122] In an embodiment, the bus (620) may communicatively couple the processor(s) (670) with the other memory, storage, and communication blocks. The bus (620) 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 (670) to the computer system (600).
[00123] In another embodiment, operator and administrative interfaces, e.g., a display, keyboard, and cursor control device may also be coupled to the bus (620) to support direct operator interaction with the computer system (600). Other operator and administrative interfaces can be provided through network connections connected through the communication port(s) (660). Components described above are meant only to exemplify various possibilities. In no way should the aforementioned exemplary computer system (600) limit the scope of the present disclosure.
[00124] In an exemplary embodiment, the present discourse discloses 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 the method for performing one or more operations by an event routing manager (ERM) in a network, the method includes receiving, by a receiving unit, a request corresponding to one or more operations from an interfacing unit via a network interface, executing, by an execution unit, the request to perform the one or more operations, where the one or more operations corresponds to the ERM, a subscriber, a publisher, and one or more events, and generating, by the execution unit, a response based on performing the one or more operations corresponding to the request. The method also includes sending, by a sending unit, the response to the interfacing unit via the network interface.
[00125] 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.
[00126] The present disclosure provides technical advancement related to request processing or executing. This advancement addresses the limitations of existing solutions by facilitating communication between the ERM and the CLI via the EM_CL interface. All the events registered using respective commands may be monitored and viewed via the EM_CL interface as per the requirement without restarting an application. The service is not impacted as modification, and changes in the event data can be done without restarting the application. The CLI simplifies operational tasks, such as scaling services, deploying updates, and managing configurations. The EM_CL interface may be utilized efficiently through async event-based implementation.
TECHNICAL ADVANCETAGES OF THE PRESENT DISCLOSURE
[00127] As is evident from the above, the present disclosure provides a technically advanced solution by providing a system and a method for facilitating communication between the ERM and the CLI via the EM_CL interface. The communication between the ERM and the CLI through the EM_CL interface may be nonservice-impacting and less time-consuming. All the events registered using respective commands may be monitored and viewed via the EM_CL interface without restarting an application. The service is not impacted by modification, and changes in the event data can be done without restarting the application. If one ERM instance goes down due to some issue (for example, network failure or network overload) during request processing or executing, then the EM_CL interface causes the next available instance to be used for the request. In this way, the EM_CL interface works in a high availability mode. The CLI simplifies operational tasks, such as scaling services, deploying updates, and managing configurations. The CLI provides access controls and permissions to ensure that only authorized individuals can perform certain operations on network services. Using the EM_CL interface, a publisher can be added to any event in run time without restarting the application, and a user can fetch all events related to a specific publisher or subscriber. Furthermore, all the archived events can be viewed or removed using the EM_CL interface. The EM_CL interface may be utilized efficiently through async event-based implementation. Also, the FCAPS for all ERM instances are monitored easily. The EM_CL interface may perform on-demand registration/deregistration of ERMs with the OAM. The EM_CL interface may verify whether any specific network service has subscribed to a particular event or not.
,CLAIMS:CLAIMS
We claim:
1. A system (108) for performing one or more operations by an event routing manager (ERM) (110) in a network (106), the system (108) comprising:
a receiving unit (208) configured to receive a request corresponding to one or more operations from an interfacing unit (112) via a network interface;
an execution unit (210) configured to:
execute the request to perform the one or more operations, wherein the one or more operations corresponds to at least one of the ERM, a subscriber, a publisher, and one or more events; and
generate a response based on performing the one or more operations corresponding to the request; and
a sending unit (212) configured to send the response to the interfacing unit (112) via the network interface.
2. The system (108) as claimed in claim 1, wherein the network interface is an interface between the ERM (110) and a user interface (UI).
3. The system (108) as claimed in claim 1, wherein the one or more operations corresponding to the ERM (110) include at least one of re-registration of the ERM to an operations and maintenance (OAM), deregistration of the ERM from the OAM, forced registration of the ERM to the OAM, getting one or more counters from the ERM, resetting the one or more counters in the ERM, obtaining details of a defined event, obtaining count of all events published in the ERM, obtaining names of all events published in the ERM, viewing of one or more archived events, and removing the one or more archived events.
4. The system (108) as claimed in claim 1, wherein the one or more operations corresponding to the events comprises obtaining details of the defined event, updating acknowledgment for the one or more events, updating notification enablement for the one or more events, and updating deferred enablement for the one or more events.
5. The system (108) as claimed in claim 1, wherein the one or more operations corresponding to the subscriber comprises obtaining one or more events subscribed by one or more network services of the subscriber, wherein the one or more operations corresponding to the publisher comprises one or more events published by one or more network services of the publisher, and adding the publisher to one or more existing events.
6. The system (108) as claimed in claim 1, wherein the response includes at least one of details corresponding to the one or more events, a success response corresponding to the one or more operations and a failure response corresponding to the one or more operations.
7. A method (500) for performing one or more operations by an event routing manager (ERM) (110) in a network (106), the method (500) comprising:
receiving (502), by a receiving unit (208), a request corresponding to one or more operations from an interfacing unit (112) via a network interface;
executing (504), by an execution unit (210), the request to perform the one or more operations, wherein the one or more operations corresponds to at least one of the ERM (110), a subscriber, a publisher, and one or more events;
generating (506), by the execution unit (210), a response based on performing the one or more operations corresponding to the request; and
sending (508), by a sending unit (212), the response to the interfacing unit (112) via the network interface.
8. The method (500) as claimed in claim 7, wherein the network interface is an interface between the ERM (110) and a user interface (UI).
9. The method (500) as claimed in claim 7, wherein the one or more operations corresponding to the ERM (110) include at least one of re-registration of the ERM to an operation and maintenance (OAM), deregistration of the ERM from the OAM, forced registration of the ERM to the OAM, getting one or more counters in the ERM, resetting the one or more counters in the ERM, obtaining details of a defined event, obtaining count of all events published in the ERM, obtaining names of all events published in the ERM, viewing of one or more archived events, and removing the one or more archived events.
10. The method (500) as claimed in claim 7, wherein the one or more operations corresponding to the events comprises obtaining details of the defined event, updating acknowledgment for the one or more events, updating notification enablement for the one or more events, updating deferred enablement for the one or more events.
11. The method (500) as claimed in claim 7, wherein the one or more operations corresponding to the subscriber comprises obtaining one or more events subscribed by one or more network services of the subscriber, wherein the one or more operations corresponding to the publisher comprises one or more events published by one or more network services of the publisher, and adding the publisher to one or more existing events.
12. The method (500) as claimed in claim 7, wherein the response includes at least one of details corresponding to the one or more events, a success response corresponding to the one or more operations and a failure response corresponding to the one or more operations.
13. A user equipment (104) communicatively coupled to a system (108), the user equipment (104) is configured to:
receive one or more commands selected by the user;
receive one or more parameters corresponding to the one or more commands selected by the user;
generate a request based on the received one or more commands and the one or more received parameters; and
send the generated request to the system (108) via an interfacing unit (112).
| # | Name | Date |
|---|---|---|
| 1 | 202321074271-STATEMENT OF UNDERTAKING (FORM 3) [31-10-2023(online)].pdf | 2023-10-31 |
| 2 | 202321074271-PROVISIONAL SPECIFICATION [31-10-2023(online)].pdf | 2023-10-31 |
| 3 | 202321074271-FORM 1 [31-10-2023(online)].pdf | 2023-10-31 |
| 4 | 202321074271-FIGURE OF ABSTRACT [31-10-2023(online)].pdf | 2023-10-31 |
| 5 | 202321074271-DRAWINGS [31-10-2023(online)].pdf | 2023-10-31 |
| 6 | 202321074271-DECLARATION OF INVENTORSHIP (FORM 5) [31-10-2023(online)].pdf | 2023-10-31 |
| 7 | 202321074271-FORM-26 [28-11-2023(online)].pdf | 2023-11-28 |
| 8 | 202321074271-Proof of Right [06-03-2024(online)].pdf | 2024-03-06 |
| 9 | 202321074271-DRAWING [25-10-2024(online)].pdf | 2024-10-25 |
| 10 | 202321074271-COMPLETE SPECIFICATION [25-10-2024(online)].pdf | 2024-10-25 |
| 11 | 202321074271-FORM-5 [25-11-2024(online)].pdf | 2024-11-25 |
| 12 | Abstract.jpg | 2025-01-17 |
| 13 | 202321074271-Power of Attorney [24-01-2025(online)].pdf | 2025-01-24 |
| 14 | 202321074271-Form 1 (Submitted on date of filing) [24-01-2025(online)].pdf | 2025-01-24 |
| 15 | 202321074271-Covering Letter [24-01-2025(online)].pdf | 2025-01-24 |
| 16 | 202321074271-CERTIFIED COPIES TRANSMISSION TO IB [24-01-2025(online)].pdf | 2025-01-24 |
| 17 | 202321074271-FORM 3 [24-02-2025(online)].pdf | 2025-02-24 |