Distributed Filtering of Events with a Single Point for Event Subscription Handling
Original Publication Date: 2005-Apr-18
Included in the Prior Art Database: 2005-Apr-18
Disclosed is a program that manages a system where there are one or more points where events are produced, and one or more points where the events are consumed. There are also two networks. The event producers are on a private network, and the consumers are on a public network. For security reasons, access to the private network must be done through a management node which is connected to both the public and private networks.
Distributed filtering of events with a single point for event subscription handling
There are n Event Producer Nodes on a private network, m Consumer Event Nodes on a public network, and one Management Node connected to both the private and public network. The m Consumer Nodes use an interface on the management node to subscribe for specific events that are produced on the n remote Producer Nodes nodes in the private network. The information gathered when a user subscribes for specific events is then used to filter out events that are not of interest to the user.
Under certain circumstances, a high number of event notifications can be generated by the producers. Each of these event notifications needs to be processed by the event filter to see if a user has subscribed to receive that particular event. There are several problems when the filtering of a large number of event notifications is done at the management node.
1) It places a strain on the resources of that node, and may interfere with the processing of other work.
2) It unnecessarily increases network traffic since the event may not be of interest to the user, and therefore did not need to be sent from the remote producer node to the management node.
The solution being submitted solves this problem by pushing the filtering of events to the remote producer nodes where the events are generated. By doing this we distribute the event filtering work over multiple nodes, and avoid the potential problems mentioned above.
The design being disclosed is a solution for delivering event notifications to users that have subscribed to those events. This solution is unique for environments where the events are produced at one or more points in one network, sent to a single point in the network, and then consumed at one or more points in a second network. In our case, the events are generated at one or more Storage Facility Images in a Storage Plex (our first network), sent to a Host Management Console (which acts as a connection point to our second network), and then sent on to the users.
The environment for the solution being offered here is somewhat unique in that the Host Management Console provides an added layer between the producers of the events (the Storage Facility Images) and the consumers of the events (the user on a client node using the ESSNI client). The ESSNI client and the Storage Facility Images are connected logically by the ESSNI server which resides on the Host Management Console.
This configuration allows for a solution which differs from other known solutions. We separate the event subscription from the event filtering, and then distribute the work of...