From: nigel@comp.lancs.ac.uk (Nigel Davies)
Newsgroups: comp.sys.isis
Subject: Groups in a mixed media setting
Date: 26 Jan 93 16:51:31 GMT
Organization: Department of Computing at Lancaster University, UK.


In response to Ken's message suggesting that more general distributed systems/
group issues be discussed in this group I thought people might be interested in
some experiences we've had of using groups in a mixed media environment. 
I'll follow these with a few questions I hope someone might be able to help 
me with.

For the last few years we have been building a platform to support distributed
multimedia applications. The platform has been based on the ANSA computational
model (essentially a client-server object model) and on the ANSAware 
implementation of this model.

The question which we had to deal with was how to model the transmission of
media types such as audio and video. The solution we adopted was to introduce
new objects called stream objects which represent the transmission of continuous
media. Application developers simply plumb together sources and sinks of 
continuous media data using these stream objects.

The next question was how to model multicast of continuous media info.  We had 
already done a _very_ simplistic implementation of object groups for 
invocation, so it seemed natural to try and exploit this for continuous media
transmission (the model not the implementation). In fact, we simply allowed
programmers to group together sources and sinks, and specified that streams
connected together source and sink groups rather than individual devices.

	O					             O
	 \				                    /
sources 0- |group interface ===stream======group interface| -O  sinks
	 /                                     
        O

                 information flow ---->

This way we could exploit the group management functionality to look after
control of new objects joining the groups.

The programmer can also use the groups for control purposes, e.g. sending
start/stop messages to the devices which have been grouped together.

Finally, in order to allow us to use groups for management purposes we
implemented a form of group hierarchies which allowed us to provide equivalent
functionality to those systems supporting domains (I can point people in the
direction of references if anyone wants more details on any of this work).

We are now entering a period of 'reflection' as far as this model goes and
I'd welcome any thoughts, specifically with reference to the following:-

1) I seem to remember that there was some talk of collaboration between APM
   (the developers of ANSAware) and Cornell a year or so ago. Did this ever
   come to anything ? (The most recent version of ANSAware still does not
   provide support for groups so I am guessing not ...)

2) It is some time since I have seen any ISIS documentation. Does ISIS support
   hierarchies of groups, and if so what sort of event ordering guarantees
   does it provide ?

3) One of the reasons for using the group abstraction for describing multicast
   /multidrop continuous media configurations was to provide the programmer
   with similar tools for carrying out both invocation and continuous media
   transmission. However, judging by the recent postings there may not be a 
   requirement for multidrop invocation groups.

4) We are now considering an implementation of the platform using mobile
   radio as the communications medium (supporting a _very_ limited range of
   media types). Does anyone have any experiences in implementing group 
   protocols over a radio link ?  More generally, does anyone know of any 
   distributed systems work aimed at such an environment ?


Cheers,

Nigel Davies.

JANET:	nigel@uk.ac.lancs.comp      | POST: University of Lancaster,
UUCP:	...!mcvax!ukc!dcl-cs!nigel  |       Department of Computing,
ARPA:	nigel@comp.lancs.ac.uk 	    |       Bailrigg,
VOICE:	+44 524 65201 Ext. 3132     |	    Lancaster, LA1 4YR
FAX:	+44 524 381707		    |	    UNITED KINGDOM