AU5831099A - A method of constructing a hierarchy of asynchronous communications channels - Google Patents

A method of constructing a hierarchy of asynchronous communications channels Download PDF

Info

Publication number
AU5831099A
AU5831099A AU58310/99A AU5831099A AU5831099A AU 5831099 A AU5831099 A AU 5831099A AU 58310/99 A AU58310/99 A AU 58310/99A AU 5831099 A AU5831099 A AU 5831099A AU 5831099 A AU5831099 A AU 5831099A
Authority
AU
Australia
Prior art keywords
channel
subject
channels
client
service
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
AU58310/99A
Inventor
Michel Ruffin
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alcatel Lucent SAS
Original Assignee
Alcatel CIT SA
Alcatel SA
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alcatel CIT SA, Alcatel SA filed Critical Alcatel CIT SA
Publication of AU5831099A publication Critical patent/AU5831099A/en
Abandoned legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/542Event management; Broadcasting; Multicasting; Notifications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/54Indexing scheme relating to G06F9/54
    • G06F2209/544Remote
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]

Abstract

Hierarchical organization procedure for a service having asynchronous communications channels where one channel is linked to one subject, ensures that when a service client emitter (S10) or receiver (C10) subscribes for a subject for which there is no authorized channel, a channel (CHd) is authorized and the channel is connected to the hierarchy according to a predetermined scheme.

Description

P/00/01i1 Regulation 3.2
AUSTRALIA
Patents Act 1990
ORIGINAL
COMPLETE SPECIFICATION STANDARD PATENT Invention Title: 'A method of constructing a hierarchy of asynchronous communications channels' The following statement is a full description of this invention, including the best method of performing it known to us: FHPSVIN' TATWO12qqbWOM24.
A METHOD OF CONSTRUCTING A HIERARCHY OF ASYNCHRONOUS COMMUNICATIONS
CHANNELS
The present invention concerns a method of constructing a hierarchy of asynchronous communications channels.
BACKGROUND OF THE INVENTION The invention applies more particularly to an event notification service in a distributed system of objects, for example a distributed system of objects based on the CORBA (Common Object Request Broker Architecture) bus defined by the OMG (Object Management Group).
In the above context, all the entities of the system .are objects, which are distributed in the system.
S• An object is defined by data and an interface 15 characterizing a type and defining a set of operations that can be invoked in respect of that object.
An event notification service in a system of distributed objects of this kind enables the objects to send information asynchronously, without needing to know 20 or to be advised of any consumer objects.
e*aS..
Similarly, an event notification service of the above kind enables objects to receive notifications without having to concern themselves with the sender objects.
The service therefore acts as a broker between senders and consumers.
The general architecture of a notification service of the above kind has two parts: a notification manager and asynchronous transmission channels.
A channel is made up of one or more objects. It includes an invocation interface for the sending objects and an administration interface for the notification manager.
The manager is responsible for general administration of the service. It is therefore responsible for instantiating and eliminating asynchronous communications channels, processing subscriptions of clients to the service (senders or consumers of notifications), storing descriptions of notification types and call types, and setting up federations of channels for organizing the routing of notifications to another channel, for example when a channel is overloaded.
"Notification type" means the information that indicates the form of the invocation to be found in the notification.
Notifications of a given type can be transmitted only by objects accepting the same notification type. In the example of a system based on the CORBA bus, there are o essentially two notification types, generic notifications S" of the push (data) form and which apply to objects with a S 15 predefined invocation interface with only the "push" ie e operation, and typed notifications corresponding to a higher level of abstraction, of the opi(argl, argn) form and which apply to objects with an invocation interface accepting a large number of operations opl to 20 opm on arguments argl to argn whose number varies from oooe• one operation to another.
oooeo "Call type" means the type with which a call is initiated. A call between two objects can be initiated at the initiative of the sender or at the initiative of the receiver.
In the first case, it is a "push" call in which the sending object invokes an operation. In the second case, it is a "pull" call or a "try-pull" call in which the destination object invokes a sending object to find out if it has any notifications for it. In the "pull" model, the destination object continues to await notifications.
In the "try-pull" model, it does not wait. Either the notifications, if there are any, are sent to it in response to an invocation or the sending object thereafter effects an invocation.
All the above principles are familiar to the skilled person.
Figure 1 is a simplified diagram of the logical architecture of a notification service of the above kind in the case of "push" calls.
A notification is sent by invoking an operation at an invocation interface. For a sender client, it is a question of invoking an operation at the invocation interface of a channel to which the client has subscribed. For a channel, it is a question of invoking an operation at the invocation interface of a consumer client who has subscribed to that channel.
Figure 1 shows two sender clients S1 and S2 and two consumer clients C1 and C2.
or: The first sender client Sl has subscribed to a first channel Chi, which enables it to send notifications on 15 that channel by invoking operations at an invocation interface Inl of that channel.
The second sender client S2 has subscribed to the first channel Chl and to a second channel Ch2, which enables it to send notifications on both channels by 20 invoking operations at the respective invocation oo..i Sinterface Inl, In2 of each channel.
The first consumer client C1 has subscribed to receive notifications from the first channel and the *second consumer client C2 has subscribed to receive notifications from the first channel Chl and from the second channel Ch2. Figure 1 shows the respective notification interfaces In3 and In4 for the two channels.
The client subscription procedure and the instantiation of the corresponding asynchronous communications channels are functions managed by an administration manager M of the notification service (see Figure 1) The service manager M has an administration interface Iam enabling clients to subscribe to the event notification service. The channels (in fact their instances) each have an administration interface to enable them to be managed by the service manager M. In this example, channels Chi and Ch2 have respective administration interfaces Ial and Ia2.
To limit the notification traffic in the system, in particular on the CORBA bus, a consumer client can indicate a particular filter to the service manager M on subscribing to a channel. This enables the client to receive only notifications that it actually wishes to receive.
The filtering is effected by the channel, which is instantiated by the administration manager with a corresponding filter.
&g •In the example shown in Figure i, consumer client C1l I" has subscribed to a filter Fl on channel Chl and consumer S. client C2 has subscribed to a filter F2 on channel Chi and a filter F3 on channel Ch2.
"S However, the process of filtering notifications on the asynchronous communications channel takes time and does not prevent unnecessary notification traffic on the CORBA bus (the network) between the sender of notifications and the channel, which slows down notification traffic.
A variant of the above process for filtering notifications is to propagate the filters back as close as possible to the source of the notifications, i.e. by propagating them to the sender clients. This is referred to as the "quenching" method.
For a given channel, a filter which consists of the OR operator applied to all the filters subscribed to for that channel is propagated to the subscribing senders.
In the Figure 1 example, there is therefore a filter Fsl equal to Fl OR F2 for notifications sent by client S1 on channel CHI, a filter Fs 2 A equal to Fl OR F2 for notifications sent by client S2 on channel CHI and a filter Fs 2 B equal to F3 for notifications sent by client S2 on channel CH2.
When filtering is effected as close as possible to the sender of the notification, i.e. the sender clients, CA\99309005.1 only notifications for which there are consumer clients are transmitted on the channel.
This advantageously reduces notification traffic on the channels.
However, this does not do anything to remove the necessity for filtering on the channel itself. This is because, for each client, the corresponding filter must be applied to notifications received via the channel. For example, channel Chi in Figure 1 receives all notifications corresponding to filters Fl and F2 and must pass all these notifications to filter Fl in order to transmit the resulting filtered notifications to consumer client C1 and also to filter F2 in order to transmit the resulting filtered notifications to consumer client C2.
Summary of the invention An object of the invention is to reduce the number of filters, and possibly to eliminate them entirely in certain favourable cases, so as not to slow down traffic.
In accordance with an embodiment of the invention, the notifications are organized into subjects. A subject corresponds to the nature of a notification. For example, one subject could be "errors", combining all event notifications relating to errors: hardware errors, network errors, disk errors, software errors, etc.
There can be a tree structure of sub-subjects for each subject. For example, for the "error" subject, there could be the tree structure shown in Figure 2, with a "software" first branch and a "hardware" second branch. Two other branches, a "network" branch and a "disk" branch, diverge from the "hardware" branch.
20 Each subject is associated with a type characterizing an invocation interface. A subsubject must be of the same type or sub-type as the associated subject.
An embodiment of the invention provides a method of organizing the subjects in a tree structure and associating each subject with an asynchronous communications channel so that the S channels are hierarchically organized in accordance with a particular scheme corresponding to the tree structure of subjects, as a result of which notifications are transmitted to interested clients without filtering.
A user of the system can therefore subscribe to subjects which are associated with asynchronous communications channels. Clients subscribe in order to receive notifications on a given subject. If the corresponding channel is not instantiated, the hierarchy of the channels is automatically re-organized to include that channel. Similarly, if a client unsubscribes from a CA\99309005.1 6 subject, the hierarchy of the channels is automatically reorganized to eliminate the corresponding channel.
The invention therefore provides a method of hierarchically organizing asynchronous communications channels in a service, a channel being associated with a subject. According to the invention, each time that a sender or receiver client of said service subscribes to a subject for which no channel has been instantiated: a channel for said subject is instantiated, and said channel is connected into said hierarchy in accordance with a particular scheme.
According to a preferred embodiment of the invention, the scheme is determined by a tree structure of subjects.
The invention additionally provides a system comprising a service providing asynchronous communication of information on channels, wherein the system uses a method of hierarchically organizing said channels as described above.
Brief description of the drawings Other features and advantages of the invention are explained in the following description, which is given by way of illustrative and non-limiting example and with reference to the accompanying drawings, in which: Figure 1, already described, is a diagram of an event notification service architecture, Figure 2, already described, shows one example of a subject tree structure of the invention, Figures 3 to 5 each show one example of a hierarchical organization of asynchronous communications channels of the invention, for a "push" call, and Figure 6 shows one example of a hierarchical organization of asynchronous communications channels of the invention, for a "pull" call.
Detailed description of the embodiments It will be understood that the invention disclosed and defined herein extends to all alternative combinations of two or more of the individual features mentioned or evident from CA\99309005.1 7 the text or drawings. All of these different combinations constitute various alternative aspects of the invention.
The foregoing describes embodiments of the present invention and modifications, obvious to those skilled in the art can be made thereto, without departing from the scope of the present invention.
In a preferred embodiment the invention provides a method of organizing asynchronous communications channels of a service hierarchically, a channel being associated with a subject.
Each time a client sending or receiving the service subscribes to a subject for which no channel is instantiated, a channel is instantiated for that subject and that channel is connected in the hierarchical organization in accordance with a particular scheme.
In practice, the scheme is determined by the tree structure of subjects.
The channel associated with a sub-subject of a given subject is connected as a sender of notifications to the channel of the subject and vice versa.
In accordance with this embodiment of the invention, subjects are therefore declared in 15 the event notification service so that a tree structure of the subjects is obtained. The subjects are declared by users with a description or the associated notification type.
The subjects are then available to consumer or sender clients who can subscribe to one or more subjects. When they subscribe, clients must specify notification type. The service manager verifies that this type is compatible with the type stored with the subject: the type requested by the client must be the same as that of the subject concerned.
If the types are compatible, and if a channel has already been instantiated for that subject, the manager assigns that channel to the consumer or sender client, if no channel has yet been instantiated for that subject, the service manager creates a channel corresponding to that subject.
A consumer client must give its reference (which identifies it in the system) when it subscribes. The service manager then supplies that reference to the channel assigned to that client. If the client is a consumer client for more than one subject, its reference is given to each channel it is assigned.
The service manager sends a sender client the reference of each channel assigned to it.
CA\99309005.1 8 The sender client can therefore invoke an operation on each of the channels identified by its reference. Each channel can invoke an operation on each of the consumer clients whose reference it holds.
For a given channel, if all the associated sender or consumer clients unsubscribe, the service manager eliminates the channel and reorganizes the hierarchy of channels.
Accordingly, in contrast to the filtering method or the quenching method, no filtering is required, either by the sender clients or by the channels for transmitting the required notifications to each of the subscribing consumer clients.
Preferably an embodiment of the invention replaces prior art filtering as effected during transmission, with upstream processing as effected at the time of subscription, and downstream processing as effected at the time of unsubscription, this processing consisting in organizing the channels hierarchically in accordance with a particular scheme.
From the point of view of notification traffic, the result obtained is equivalent to the quenching method, but without the time wasted by the processing performed by the sender 15 clients and the channels to effect the filtering.
The method according to a preferred embodiment of the invention of hierarchically organizing the channels is not able to filter notifications in accordance with certain constraints, however. For example, notifications cannot be filtered on the basis of the value of any particular item of data. The method of the invention of hierarchically organizing the channels can in this 20 case be combined with the o* 9 filtering and "quenching" methods. The filter processing by the sender clients and the channels is then reduced compared with the prior art, because it is limited to verifying constraints.
Figures 3 to 5 show the connection of channels by the method of hierarchically organizing "push" calls in accordance with the invention.
This hierarchical organization refers to the example of a tree structure of subjects represented in Figure 2.
It is a purely explanatory example. It in no way constitutes an exhaustive treatment of the subject.
In Figure 3, a sender client S10 has subscribed to the "disk" subject. A channel Chd corresponding to that subject has been instantiated with an invocation interface Ind and an administration interface Iad. Its reference RefCHd is transmitted to client A consumer client C10 with an invocation interface InlO has subscribed to the same subject. It is assigned the same channel CHd and receives its reference RefclO.
It therefore receives all notifications corresponding to disk errors from all senders who have subscribed to that subject, which in this example means client In Figure 3, a sender client 520 has also subscribed to the "disk" subject and has been assigned channel CH d A consumer client C20 has subscribed to the "error" subject. This subject is at a higher hierarchical level than the "disk" subject. There can be errors other than disk errors in the tree structure shown in Figure 2.
Thus, the "disk" subject is a sub-subject of the "error" subject. A channel CHf corresponding to the "error" subject is therefore instantiated and connected so that, from its point of view, channel CHd is a sending channel.
This is shown in Figure 4. Client C20 is assigned channel CHf. Channel CHd becomes a sending channel for client C10 and for channel CHf.
In Figure 5, a sender client S30 has subscribed to the "hardware" subject, which is a sub-subject of the "error" subject, and the "disk" subject is a sub-subject of the "hardware" subject (the tree structure is shown in Figure Thus, the hierarchical organization method of the invention applied to this particular situation consists in instantiating a corresponding channel CH M and in placing it between channels CHd and CHf. Channel CH d is therefore a sending channel for channel CH M which is in turn a sending channel for channel CHf. Client S20 is assigned channel CHf.
Generally speaking, when a channel associated with a particular subject has already been instantiated and connected in the hierarchy of channels, a channel associated with a sub-subject of that particular subject is connected as a sending channel vis-&-vis the channel of the particular subject.
When a channel associated with a particular subject has already been instantiated and connected in the hierarchy of channels, a channel associated with a subject for which the particular subject is a sub-subject 20 is connected as a receiver channel vis-&-vis the channel a.
of the particular subject.
eea Finally, provided a client has been assigned to a channel, the channel is maintained within the organization. If all the clients that were assigned to S 25 it have unsubscribed, the channel can be eliminated and the hierarchical organization reviewed automatically by the service manager. For example, if client .•g.ei unsubscribes from the "hardware" subject, the S"corresponding channel CH M could be eliminated to revert to the organization shown in Figure 4.
Figure 6 shows one example of connection of channels in accordance with the invention for "pull" calls between client S10, channel CHd and client C20 from Figure 3. It can be seen that the difference between the two figures relates to the fact that it is the destination objects that make the invocations. Thus, client C10 contains the reference RefCHd of channel CHd for invocations at a 11 corresponding invocation interface Ind' on that channel. Similarly, channel Chd contains the reference Refsl of client S 10 for invocations at a corresponding invocation interface InslO Otherwise, an embodiment of the invention is applied in the same manner as for "push" calls. Everything described previously for "push" calls therefore applies in the same manner to "pull" calls.
Generally speaking, the invention applies to both types of call, which can be combined.
The invention has been described in one example of application to an event notification service. It applies to any service using asynchronous communications channels to transmit information of any kind.
For the method to be applied correctly, it is preferable that users verify that their subject declarations are coherent. For a subject to be a sub-subject of another subject, the operations that the sub-subject can invoke on the subject must be acceptable to it. This is a problem of compatibility of invocation interfaces, to be verified by each user.
*o .i

Claims (9)

1. A method of hierarchically organizing asynchronous communications channels in a service, a channel being associated with a subject, wherein, each time that a sender client or a receiver client of said service subscribes to a subject for which no channel has been instantiated: a channel is instantiated for said subject, and said channel is connected in said hierarchy in accordance with a particular scheme.
2. A method according to claim 1, wherein the particular scheme corresponds to a tree of subjects declared to the service.
3. A method according to claim 2, wherein, when a channel associated with a particular subject has already been instantiated and connected in said hierarchy, a channel associated with a sub-subject of said particular subject is connected as a sender vis-a-vis the channel of S• said particular subject. 20
4. A method according to claim 2, wherein, when a first channel associated with a first subject has already been instantiated and connected in said hierarchy, a second channel associated with a second subject of which the first subject is a sub-subject is connected as a receiver 25 vis-&-vis the first channel.
A method according to any of claims 1 to 4, wherein, when all clients subscribing to a particular subject unsubscribe from said subject, the corresponding channel is eliminated and the hierarchy of channels is automatically reorganized.
6. A method according to claim 1, wherein the channels can additionally effect filtering processes. 13
7. A system comprising a service providing asynchronous communication of information on channels, wherein the system uses a method of hierarchically organizing said channels according to any preceding claim.
8. A method substantially as hereinbefore described with reference to the accompanying drawings.
9. A system substantially as hereinbefore described with reference to the accompanying drawings. Dated this 5th day of November 1999 ALCATEL by its attorneys Freehills Patent Attorneys 0 **0 *00000 *0 *0
AU58310/99A 1998-11-09 1999-11-05 A method of constructing a hierarchy of asynchronous communications channels Abandoned AU5831099A (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR9814055 1998-11-09
FR9814055A FR2785753B1 (en) 1998-11-09 1998-11-09 METHOD FOR CONSTRUCTING A HIERARCHY OF ASYNCHRONOUS COMMUNICATION CHANNELS

Publications (1)

Publication Number Publication Date
AU5831099A true AU5831099A (en) 2000-05-11

Family

ID=9532515

Family Applications (1)

Application Number Title Priority Date Filing Date
AU58310/99A Abandoned AU5831099A (en) 1998-11-09 1999-11-05 A method of constructing a hierarchy of asynchronous communications channels

Country Status (7)

Country Link
EP (1) EP1001340B1 (en)
JP (1) JP2000174776A (en)
AT (1) ATE362134T1 (en)
AU (1) AU5831099A (en)
CA (1) CA2287815A1 (en)
DE (1) DE69936033T2 (en)
FR (1) FR2785753B1 (en)

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4914583A (en) * 1988-04-13 1990-04-03 Motorola, Inc. Method of indicating processes resident within a cell of a data processing system
EP0521153B1 (en) * 1991-01-23 2001-03-14 Sun Microsystems, Inc. Method and apparatus for scoped interprocess message switching

Also Published As

Publication number Publication date
FR2785753B1 (en) 2000-12-15
JP2000174776A (en) 2000-06-23
FR2785753A1 (en) 2000-05-12
DE69936033D1 (en) 2007-06-21
CA2287815A1 (en) 2000-05-09
ATE362134T1 (en) 2007-06-15
DE69936033T2 (en) 2008-01-10
EP1001340B1 (en) 2007-05-09
EP1001340A1 (en) 2000-05-17

Similar Documents

Publication Publication Date Title
US7962624B2 (en) System and method for collaborative processing of distributed applications
US8984535B2 (en) System and method for facilitating the exchange of information among applications
US5719942A (en) System and method for establishing a communication channel over a heterogeneous network between a source node and a destination node
JPH10116193A (en) Speech control unit and method for controlling speech
US5999986A (en) Method and system for providing an event system infrastructure
EP0825787A1 (en) Negotiation process for connection management
US7054873B2 (en) Telecommunications network resource handling arrangement and method
EP1474746A1 (en) Management of message queues
TW200525938A (en) Remote system administration using command line environment
WO2003093943A2 (en) Systems and methods for application view transactions
US20090138596A1 (en) Method for changing service quality of a content adaptively
EP0693837A1 (en) Method of providing representations of connections in a communications network
AU5831099A (en) A method of constructing a hierarchy of asynchronous communications channels
US20020087693A1 (en) Method and system for distributing service functionality
KR100602318B1 (en) Service application architecture for integrated network service providers
EP1715653B1 (en) A system and method for mediating within a network
US8135808B2 (en) Automated provisioning system
Loyolla et al. Multiware platform: an open distributed environment for multimedia cooperative applications
Lindsey et al. RIVUS: A stream template language for capturing multimedia requirements
Leydekkers et al. A computational and engineering view on open distributed real-time multimedia exchange
KR100544151B1 (en) Software management system for imbedded operating system of digital television
Adamopoulos et al. Continuous media support in the distributed component object model
Ruston et al. Integrating computing and telecommunications: A tale of two architectures
AU2764000A (en) Method of modifying a protocol between distributed objects
Zeroual et al. A protocol synthesis algorithm: a relational approach

Legal Events

Date Code Title Description
MK5 Application lapsed section 142(2)(e) - patent request and compl. specification not accepted