Subject: WG Review: Instant Messaging and Presence Protocol (impp)

From: Steve Coya <[email-masked]>
Date: Wed, 25 Nov 1998 20:12:54 -0500

A new IETF working group has been proposed in the Applications Area.
The IESG has not made any determination as yet. 

The following Description was submitted, and is provided for
informational purposes only:

Instant Messaging and Presence Protocol (impp)
----------------------------------------------
 
Current Status: Proposed Working Group

Description of Working Group:
 
This working group will define protocols and data formats necessary to
build an internet-scale end-user presence awareness, notification and
instant messaging system. 

Background:

Instant messaging differs from email primarily in that its primary focus 
is immediate end-user delivery.

Presence information was readily accessible on internet-connected 
systems years ago; when a user had an open session to a well-known 
multi-user system, his friends and colleagues could easily tell where he 
was connected from and whether he was using his computer.  Since that 
time, computing infrastructure has become increasingly distributed and a 
given user may be consistently "available," but has no standard way to 
make this information known to her peers.  This working group will 
design a system to address this need.

Goals:

The working group will develop base protocol(s) for simple instant
messaging and presence awareness/notification. It will specify optional
extensions for authentication, message integrity, encryption and access
control. It is desirable, but not required, for the working group to 
develop a solution that works well for awareness of and communication 
with entities other than human users.

Non-goals:

Providing a general notification mechanism for data other than user
presence information and instant messages.

The following are in scope for the working group:

PRESENCE
--------

* A format for encoding presence information.

Different entities may want to provide different presence information.
The working group will specify a minimal set of attributes, such as the
entity's name and availability, which all compliant implementations must
support. The working group will also define a mechanism for extending
this presence information and a set of common extensions.

* A protocol for fetching, publishing, subscribing to, and receiving
  notifications of changes in presence information.

An entity will be able to look up a particular entity's presence
information, or to indicate that it wants to receive notifications of
changes to that information.  An entity must be capable of sending
notifications to interested remote entities when its presence
information changes.

INSTANT MESSAGING
-----------------

* A format for encoding instant messages.

This working group should reuse existing systems for encoding message
meta-data and content, but may need to specify new schema and/or types 
of content.

* A protocol for sending and receiving instant messages.

Instant messages will be targeted (not broadcast) and delivered to an
entity that indicates that it is currently available to receive those
messages.

SHARED
------

* Entity Namespace

This working group will define the instant messaging / presence entity
namespace and naming conventions; these must support distributed name-
space management.  It will also investigate mapping the existing email
namespace onto the instant messaging / presence entity namespace.  The
working group will define a mapping from an instant messaging / presence
entity name to a DNS name.

* Authentication, Message Integrity and Encryption

While developing new authentication and message privacy technology is
not in scope for the working group, the proper application of existing
technologies in these areas and techniques for negotiating and
communicating this information, once obtained, are in scope.  
The working group will define how to use the prevailing MIME body 
encryption and authentication system of the day to secure Instant 
Messages and presence information. 

* Access Control

An access control mechanism determines which entities can and can't
retrieve presence information and/or send instant messages. The working
group will investigate access control schemes and will either define how
an existing access-control mechanism will be used for presence and 
instant messaging, or will specify a new mechanism. This access control 
mechanism will determine who may  observe a user's presence information, 
what presence information a particular observer will see, who may update 
a user's presence information and who may send instant messages to a 
particular user. The working group will investigate designs in which a 
server is responsible for controlling access to an end user's presence 
information and designs which permit delegation of this capabilty to the 
client's user-agent, such as those in which the server receives and 
distributes opaque, encrypted presence information.

* Scalability

An internet-scale deployment of instant messaging and presence systems
might involve thousands to millions of independently-administered
domains, which might contain thousands of user-agents for the average
domain and millions of users for some domains. Any given user-agent 
would likely have only a few active subscriptions. However, some 
subscribed-to entities might well be the subject of thousands or 
millions of active subscriptions.  The working group will design a 
system amenable to distribution or clustering techniques which can 
address such scenarios.

To minimize bandwidth use, the working group may investigate
techniques such as the incremental update of presence data, subscription
aggregation and presence information caching, re-using existing 
solutions as appropriate.

* Network topology

The real-world Internet is a complex transport environment with 
firewalls, gateways, proxies and network address translators often 
interposed between endpoints. The working group will develop protocols 
that will work as robustly in such real-world environments as possible.

The following are not in scope for the working group:

* Providing a transport for streaming media.

* Invention of new authentication and encryption techniques. (However,
  the specification of which current authentication and encryption
  techniques, if any, are appropriate for the Working Group and how
  exactly how they are used is IN scope.)

Deliverables:

The working group plans to deliver the following documents but may,
in consultation with the Area Directors, deliver an alternate set
of documents:

Requirements for Instant Messaging and Presence (internet-draft)

Presence and Instant Messaging Event Notification Transport Protocol 
(PIMENT) (Standards Track).
This document will specify a base wire protocol to be used as a 
substrate for instant messaging and presence. This will include 
entity-naming conventions and transport options.

Instant Messaging Protocol (IMP) (Standards Track)
	This document will define the proper semantics and formats
	for using PIMENT as a substrate for instant messaging.

Presence Information Protocol (PIP) (Standards Track)
	This document will define the proper semantics and formats
	for using PIMENT as substrate for presence awareness and
	notification.

Presence Information Protocol Schema (Standards Track)
	This document will define schema, markup and extension methods
	for describing presence information.

PIMENT Authentication, Message Privacy and Access Control
	(Standards Track)
	This document will specify standard user authentication
	mechanisms, message authentication and privacy mechanisms
	and access control mechanisms for PIMENT.