RFC 1693 (rfc1693) - Page 3 of 36


An Extension to TCP : Partial Order Service



Alternative Format: Original Text Document

< Previous
Next >


RFC 1693       An Extension to TCP: Partial Order Service  November 1994


1. Introduction and motivation

   Current applications that need to communicate objects (i.e., octets,
   packets, frames, protocol data units) usually choose between a fully
   ordered service such as that currently provided by TCP and one that
   does not guarantee any ordering such as that provided by UDP.  A
   similar "all-or-nothing" choice is made for object reliability -
   reliable connections which guarantee all objects will be delivered
   verses unreliable data transport which makes no guarantee.  What is
   more appropriate for some applications is a partial order and/or
   partial reliability service where a subset of objects being
   communicated must arrive in the order transmitted, yet some objects
   may arrive in a different order, and some (well specified subset) of
   the objects may not arrive at all.

   One motivating application for a partial order service is the
   emerging area of multimedia communications.  Multimedia traffic is
   often characterized either by periodic, synchronized parallel streams
   of information (e.g., combined audio-video), or by structured image
   streams (e.g., displays of multiple overlapping and nonoverlapping
   windows).  These applications have a high degree of tolerance for
   less-than-fully-ordered data transport as well as data loss.  Thus
   they are ideal candidates for using a partial order, partial
   reliability service.  In general, any application which communicates
   parallel and/or independent data structures may potentially be able
   to profit from a partial order service.

   A second application that could benefit from a partial order service
   involves remote or distributed databases.  Imagine the case where a
   database user transmitting queries to a remote server expects objects
   (or records) to be returned in some order, although not necessarily
   total order.  For example a user writing an SQL data query might
   specify this with the "order by" clause.  There exist today a great
   number of commercial implementations of distributed databases which
   utilize - and thus are penalized by - an ordered delivery service.

   Currently these applications must use and pay for a fully
   ordered/fully reliable service even though they do not need it.  The
   introduction of partial services allows applications to lower the
   demanded quality of service (QOS) of the communication assuming that
   such a service is more efficient and less costly.  In effect, a
   partial order extends the service level from two extremes - ordered
   and unordered - to a range of discreet values encompassing both of
   the extremes and all possible partial orderings in between.  A
   similar phenomenon is demonstrated in the area of reliability.






Connolly, Amer & Conrad


< Previous
Next >


Web Standards & Support:

Link to and support eLook.org Powered by LoadedWeb Web Hosting
Valid XHTML 1.0! Valid CSS! eLook.org FireFox Extensions