Subject: Fwd: ramblings on protocol range

From: Abel Weinrib <[email-masked]>
Date: Wed, 7 Jul 1993 14:14:55 -0400 (EDT)

Eve M. Schooler
							Mmusic Working Group
							June 1993

FROM MODELS TO PROTOCOLS:
In search of a session taxonomy

Herein lies a first attempt to map different session styles into their 
underlying session control protocols.  Requirements for the control
protocols are given in descriptive terms, rather than in terms of
packet exchanges or a possible Internet implementation; however, for
a second draft these would be useful.

1. Session Models

There exists a continuum of session scenarios for group meetings
[1][2][5][6].  The picture below only lists a sample from the full range
and only crudely approximates an ordering.  Secure variations on these
meetings also exist.

        impromptu 
         hallway
         meetings        classroom        seminar      pay-per-view

    |-------|-------|--------|-------|-------|-------|-------|-------|

   pt2pt       arch design         panel          lecture           TV 
   phone        review/          discussion/                     broadcast
    call     "quilting bee"   presidential debate

2. Differentiation among Models

Within this spectrum, different session types have different
requirements and policies [1][2][5].  There are different types of
participation (active versus passive), gradations of identification
policies (known vs anonymous participants), and extreme variations in
the degree of interconnectivity among participants, both in terms of
the session and the media topology.  In certain cases, symmetry exists
for N-way communication capabilities, while in other cases conferees
are asymmetrically interconnected, relying on an initiator, moderator,
filter/reflector or a privileged set of designees to coordinate
communication on behalf of others.

Explicit vs implicit communication is another distinguishing feature;
this relates to whether or not the session has policies attached to it,
such as who dictates membership rules, the extent to which session
information is disseminated or if participant information is meant to
be kept globally coherent.  Finally, the decision to model the system
in a centralized or distributed fashion influences the degree of
messaging synchrony and causality.

Additional attributes to differentiate among session types are proposed
in [UCB]; the model of interaction (static, controlled or dynamic), the
accessibility to the information (controlled, uncontrolled), and the
event scheduling (planned, unplanned).

3. Session Control Protocols

Each session type is reflected in an underlying session control
protocol.  Accordingly, a series of different session control protocols
exist.  However, the degree of similarity between control protocols is
an interesting matter of speculation, and under investigation by a
number of researchers.  The issue at hand is how closely related are
the protocols in behavior, or how much would one protocol need to
change to support a similar or "neighboring" session model?

Although it is probably safe to say that no one algorithm will provide
the range of functionality nor scalability that is needed to support
the existing variety in session types, we should be able to use one
session protocol to support a cluster of related session schemes based on
slight variations in the parameterization of the protocol.

4. Communication Models

One unifying approach has been to classify sessions according to their
communication model, such as loosely-controlled or tightly-controlled.
Communication models might be viewed as providing a larger granularity
for classification of session types.  The MBONE currently carries
primarily loosely-controlled sessions, i.e., sessions with little to no
interaction among members.  Consequently there is no arbitration
facility for explicit membership, secure sessions, or coordination of
quality-of-service options for time-critical media.  Users may learn of
available sessions using the "sd" utility or other out of band
mechanisms such as e-mail.

However, there is clearly also a need for tightly-controlled sessions
that provide mechanisms for directly contacting other users to initiate
sessions and for negotiating conference parameters such as membership,
media encodings and encryption keys.  In addition, these sessions
should support renegotiation during a session, for example to add or
delete members or to change a media encoding.  It is possible that a
tight-control protocol will, in the limiting case, also support certain
looser controlled algorithms (e.g., the one used by vat, nv and nevot
[7][8][9]).

Because the range of session types is really a continuum, the boundary
between loose and tight control is blurry.  However, at a very basic
level, the main difference is the degree of synchronized communication
among participants.

5. Communication Strictness

In a message to the working group mailing list, Jon Crowcroft offered
another approach for classifying conference session models [3].  He 
suggested that session control may be characterized in three ways:

	1. How distributed?
	2. How tight/loose?
	3. How reliable? ordered? available?

The latter two might be described as "communication strictness",
and the first characteristic may be an implementation decision to
support 2&3.  He went on to state that loose control is easier to
implement in a distributed fashion, while tight control is easier to
implement centrally.  We are basically in agreement with this latter
statement, but claim that a distributed solution is needed for
both loosely- and tightly-controlled approaches for Internet operation.

6. Mappings of Conversation Styles 

As we move from point-to-point phone calls to
TV broadcasts, sessions require progressively less coordination
(from tight to loose control), are less rigid (fewer policies), and
entail less communication overhead (because members have less need to
share session state).  However, the further along the axis, the larger
the sessions, the more need to support membership dynamics, and the
larger the percentage of receivers to senders of information.

6.1 Loose control in the extreme: TV broadcast model

At the far end of the axis, the loosest model that is useful
might be a conference where there is implicit session establishment;
there is no explicit request to join a session.  Anyone may join.
No one is restricted.  In addition, there is no communication among
participants, meaning no session information is distributed among
conferees, such as who else is participating; the sender simply sends
its data (e.g., to a group address), and the receivers simply tune into
that address.  The sender does not know who is listening.  The
receivers only know the identification of the sender, and none of the
other listeners.  There is no attempt to maintain either a shared
global view of the conference nor an approximate view of the
conference.  Because all conferees are independent, it is easy to
create a distributed model of this.  The only piece of information that
needs to be known externally about the conference is "the channel", so
that others may join in.  The notion of a published channel connotes 
public access and pre-arrangement.

6.2 A more structured TV broadcast: Pay-per-view model

Pay-per-view might be described as a more structured type of TV
broadcast.  Typically, one designee has the responsibility to track
session participation for billing purposes.  The designee institutes
access control policies for the session, making joining a session an
explicit task.  In order for billing to work properly, the admission
decisions need to be accurate and thus reliable.  Likewise, if users
are being charged for session hookup and/or media delivery, then
they want accurate media delivery.

As with the TV broadcast model, there is the implication that viewing
is unidirectional, but this is open to debate.  There is also the open
issue that other participants may or may not share session information
among themselves, whereas they must share their identity with the
designee.  This scheme clearly has a more centralized flavor to it, and
introduces policies for exclusivity, both in who it allows in to the
session and to whom it advertizes its channel.

6.3 Bidirectional multicasts with modest state sharing

A slight variant on a TV broadcast is the kind of session that is
supported by RTCP, as implemented in nv, nevot, vat et al.  Although
the approach to session establishment is similar, a notable difference
is that, once a user is part of a session, the user regularly
advertizes its participation and, by listening on that same address
port, collects other participants' information.  Thus, this model
maintains approximate "session state", but is willing for it to be
constructed asynchronously and for different participant's to see
different versions of it.  Due to the passive nature of the information
sharing, there is no requirement that communication with other
conferees be reliable.

Another dissimilarity is the media topology, or who actually
sends/receives data, which may be something other than unidirectional.
The philosophy is that all have equal access.  Yet, observed conferences
on that MBONE show that, for large conferences, there are typically only 
a few senders and many more receivers.

An early version of the ivs tool used a slight variant on the RTCP
approach [10].  While in most regards the control model for ivs was the
same as other MBONE tools, in certain instances ivs actively requested
that other participants identify themselves.  This cut down on the lag
time for reconstruction of "session state", and was used to help
resynchronize video (???).

As the number of session participants grows extremely large, the
relation between the active versus passive communication approach
changes slightly.  While passive communication normally has lower
overhead, periodic updates of session information become unreasonable
for very large sessions. A lengthened retransmit period reduces
overhead, but risks increasing inconsistencies in session state among
members.  At some point, active requests may become more effective than
periodic rebroadcasts; for instance at the beginning of a session, or
specifically when the session completes.  While this works well when a
session has few changes warranting further message exchanges, if the
modifications are highly dynamic, the session may be bogged down with
just as many active retransmits as if periodic, passive messages were
exchanged.  Therefore, active communication is a win only if the
frequency of active requests remains low, since an active request
potentially generates N reply messages, versus the 1 message for
passive information sharing.  Active requests also have the potential
to trigger message implosion.

Doing away with n-way information sharing (even of the passive variety)
may also help with overhead.  This implies either reverting to no
communication between conferees, or instituting a more centralized
solution where one designee maintains session information.

6.4  Medium-sized asymmetric sessions

Several of the session scenarios (classroom, panel discussion/
presidential debate, seminar, lecture) are variations on the same
theme.  They all represent forums where some amount of time is devoted
to a main presentation, followed by or interspersed with audience
participation.  For all of these session types, there is an increased
sense of formality or orderliness in the interactions, though this
depends in part on one's experiences in classrooms etc.  Like
pay-per-view, there is a modicum of session maintenance that may be
used to track participation, whether to assess someone's performance
or to verify that a conferee is registered to attend.  It is more
likely that the session will be regulated, and thus require some type
of floor control.  In other words, there would be restrictions on
who is allowed to play an active role in information dissemination,
and when they are allowed to do so.  Even though the number of active 
participants may be dwarfed by the number of passive participants, the 
ability to support interactivity is a key ingredient.

The more official nature of these meetings requires that the
sessions be scheduled in advance, and announced in a more public fashion.
The dynamics of membership may be quite high for a lecture with several
hundred people (e.g., during a conference or workshop), but is expected
to be quite low for a classroom where each individual's visibility is high
(at least in the non-electronic realm!).  Again, sender identity is important,
but increasingly as we head away from the TV model, the identification
and sharing of passive participant information becomes important, 
as does global state synchrony (all participant know what other participants 
know).

6.5 Smaller, impromptu sessions

The remaining cluster of session types (architectural design
review/quilting bee, impromptu hallway meetings, point-to-point phone
call) are closely related to each other.  They represent highly
collaborative sessions.  As such, multiway communication is required.
In all likelihood, group members may participate to an equal degree (as
senders) and will have equal access to session-related information,
such as who else is involved.  The informality and spontaneity of these
meetings may make policy setting more fluid.  A need exists to support
group negotiations.

To foster this type of collaboration, the session are likely to be 
relatively small (compared with a TV broadcast, but not with a 
classroom).  In contrast to larger sessions, group membership may
be explicit and more static.  In the limiting case, this model
becomes a point-to-point call.

Although smaller sessions have a larger percentage of active
participation by conference members, the threshold for the number
of maximum active senders is the same regardless of session size or 
type [4].  This is a function not only of network bandwidth limits, but
also of how much incoming data one individual can process.  There will
only ever be a small number of senders, whether that is a function of
etiquette (as with the MBONE tools), underlying topology, or through
the establishment of restrictive session policies.

7. Attribute Summary

[THIS NEEDS WORK: Would like to list the metrics used for comparison.

	Session establishment: implicit or explicit
	Communication among participants (control and media): 
		symmetric: none, 1-to-1, n-to-n
		asymmetric: via moderator or moderators: 1-to-n, m-to-n
	Style of communication: passive vs active information sharing
	Session maintenance: global view, approximate view
	Participant identity: just sender, sender knows receivers, all
	Message/Data requirements: unreliable vs reliable
	Accessibility: private/public
	Changeability: static/dynamic
	Session style: impromptu/scheduled
]

8. References

[1]  Confctrl Minutes, Proceedings 25th Internet Engineering Task Force,
     Washington, D.C. (Nov 1992).

[2]  Confctrl Minutes, Proceedings 26th Internet Engineering Task Force,
     Columbus, OH (Mar 1993).

[3]  Crowcroft, J., message to confctrl mailing list (Apr 1993).
 
[4]  Cogger, D., confctrl MBONE telemeeting (May 1993).

[5]  Szyperski, C., Ventre, G., "A Characterization of Multi-Party
     Interactive Multimedia Applications", High Performance Network
     Research Report (Feb 1993).

[6]  Schooler, E.M., "The Impact of Scaling on a Multimedia Connection
     Architecture", to appear in the Journal of Multimedia Systems (1993); 
     a shorter version appeared in the 3rd International Workshop on Network
     and Operating System Support for Digital Audio and Video, San Diego, CA
     (Nov 1992).

[7]  vat, LBL visual audio tool

[8]  nv, Xerox PARC network video tool

[9]  Schulzrinne, H., "Voice Communication Across the Internet: A
     Network Voice Terminal", Department of Electrical and Computer
     Engineering, Department of Computer Science, University of
     Massachusetts, Amherst, MA (July 1992).

[10] Turletti, T., "H.261 Software Codec for Videoconferencing over
     the Internet", Research Report 1834, Institut National de Recherche
     en Informatique et en Automatique, Sophia-Antipolis, France (Jan
     1993).