RFC 1693:An Extension to TCP : Partial Order Servi...
RFC-Ref

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.

   It is worth mentioning that a TCP implementation providing a partial
   order service, as described here, would be able to communicate with a
   non-partial order implementation simply by recognizing this fact at
   connection establishment - hence this extension is backward
   compatible with earlier versions of TCP.  Furthermore, it is
   conceivable for a host to support the sending-half (or receiving-
   half) of a partial order connection alone to reduce the size of the
   TCP as well as the effort involved in the implementation.  Similar
   "levels of conformance" have been proposed in other internet
   extensions such as [Dee89] involving IP multicasting.

   This RFC proceeds as follows.  The principles of partial order
   delivery, published in [ACCD93a], are presented in Section 2.  The
   notion of partial reliability, published in [ACCD93b], is introduced
   in Section 3 followed by an explanation of "reliability classes".
   Then, the practical issues involved with setting up and maintaining a
   Partial Order Connection (POC) within a TCP framework are addressed
   in Section 4 looking first at connection establishment, and then
   discussing the sender's role and the receiver's role.  Section 5
   provides insights into the expected performance improvements of a
   partial order service over an ordered service and Section 6 discusses
   some future directions.  Concluding remarks are given in Section 7.

Google
Web
RFC-Ref