rfc2188.txt

来自「RFC 的详细文档!」· 文本 代码 · 共 1,709 行 · 第 1/5 页

TXT
1,709
字号






Network Working Group                                         M. Banan
Request for Comments: 2188                                        Neda
Category: Informational                                      M. Taylor
                                                                   AWS
                                                              J. Cheng
                                                                   AWS
                                                        September 1997


          AT&T/Neda's Efficient Short Remote Operations (ESRO)
                   Protocol Specification Version 1.2


Status of this Memo

   This memo provides information for the Internet community.  It does
   not specify an Internet standard of any kind.  Distribution of this
   memo is unlimited.

IESG Note

   This protocol has not had the benefit of IETF Working Group review,
   but a cursory examination reveals several issues which may be
   significant issues for scalability.  A site considering deployment
   should conduct a careful analysis to ensure they understand the
   potential impacts.

Abstract

  This document specifies the service model, the notation and protocol
  for Efficient Short Remote Operations (ESRO). The ESRO service is
  similar to and is consistent with other Remote Procedure Call
  services.  The emphasis of ESRO service definition and the ESRO
  protocol is on efficiency.  ESRO is designed specifically with
  wireless network (e.g., CDPD) usage in mind.

  ESRO protocol provides reliable connectionless remote operation
  services on top of UDP (or any other non-reliable connectionless
  transport service) with minimum overhead.  ESRO protocol supports
  segmentation and reassembly, concatenation and separation as well as
  multiplexing for service users (applications).

  ESRO allows for trade-offs between efficiency and reliability by
  specifying both 2-way hand-shake and 3-way hand-shake based protocols.

  Encoding mechanisms for presentation of the parameters of remote
  operations are outside the scope of this document.  But,
  identification (tagging) of the encoding mechanism in use (e.g., XDR,



Banan, et. al                Informational                      [Page 1]

RFC 2188                          ESRO                    September 1997


  BER, PER) is supported by ESRO protocol.

  A variety of applications can use the ESRO protocol.  Some early
  applications using ESRO include efficient short message submission and
  delivery, credit card authorization and white pages lookup.














































Banan, et. al                Informational                      [Page 2]

RFC 2188                          ESRO                    September 1997


Contents

  1  INTRODUCTION                                                      4
     1.1 Relationship To Existing Remote Operation Services    .       5
         1.1.1 ESRO and RPC    .   .   .   .   .   .   .   .   .       5
         1.1.2 ESRO and ROSE   .   .   .   .   .   .   .   .   .       5
     1.2 Overview of ESROS     .   .   .   .   .   .   .   .   .       5
     1.3 The Remote Operation Model    .   .   .   .   .   .   .       6
  2  ESRO SERVICE DEFINITIONS                                          8
     2.1 Acknowledged Result Service Mode  .   .   .   .   .   .       9
         2.1.1 Performer side .   .   .   .   .   .   .   .   .        9
         2.1.2 Invoker side    .   .   .   .   .   .   .   .   .      11
     2.2 Non-acknowledged Result   .   .   .   .   .   .   .   .      11
         2.2.1 Performer side .   .   .   .   .   .   .   .   .       12
         2.2.2 Invoker side    .   .   .   .   .   .   .   .   .      12
     2.3 Serialized Use of ESRO Services   .   .   .   .   .   .      12
         2.3.1 Invoker     .   .   .   .   .   .   .   .   .   .      12
         2.3.2 Performer   .   .   .   .   .   .   .   .   .   .      12
     2.4 ESROS-INVOKE Service  .   .   .   .   .   .   .   .   .      13
         2.4.1 Operation-value     .   .   .   .   .   .   .   .      13
         2.4.2 Performer-address   .   .   .   .   .   .   .   .      14
         2.4.3 Invoker-address     .   .   .   .   .   .   .   .      14
         2.4.4 Invoke-argument-encoding-type   .   .   .   .   .      15
         2.4.5 Invoke-argument     .   .   .   .   .   .   .   .      15
         2.4.6 Invoke-ID   .   .   .   .   .   .   .   .   .   .      15
         2.4.7 Failure-value   .   .   .   .   .   .   .   .   .      16
     2.5 ESROS-RESULT Service  .   .   .   .   .   .   .   .   .      16
         2.5.1 Result-argument-encoding-type   .   .   .   .   .      16
         2.5.2 Result-argument     .   .   .   .   .   .   .   .      17
         2.5.3 Invoke-ID   .   .   .   .   .   .   .   .   .   .      17
         2.5.4 Failure-value   .   .   .   .   .   .   .   .   .      18
     2.6 ESROS-ERROR Service   .   .   .   .   .   .   .   .   .      18
         2.6.1 Error-value     .   .   .   .   .   .   .   .   .      18
         2.6.2 Error-argument-encoding-type    .   .   .   .   .      19
         2.6.3 Error-argument .   .   .   .   .   .   .   .   .       19
         2.6.4 Invoke-ID   .   .   .   .   .   .   .   .   .   .      20
         2.6.5 Failure-value   .   .   .   .   .   .   .   .   .      20
     2.7 ESROS-FAILURE Service     .   .   .   .   .   .   .   .      20
         2.7.1 Failure-value   .   .   .   .   .   .   .   .   .      21
         2.7.2 Invoke-ID   .   .   .   .   .   .   .   .   .   .      21
  3  ESRO SERVICE NOTATION                                            21
     3.1 ES-OPERATION Notation     .   .   .   .   .   .   .   .      22
     3.2 Mapping of ESROS Notation     .   .   .   .   .   .   .      22
         3.2.1 Invocation of an Operation .   .   .   .   .   .       22
         3.2.2 Reply of an Operation   .   .   .   .   .   .   .      22
  4  REMOTE OPERATIONS PROTOCOL                                       23
     4.1 Overview of the Protocol  .   .   .   .   .   .   .   .      23
         4.1.1 Service Provision (Invoker User)    .   .   .   .      24



Banan, et. al                Informational                      [Page 3]

RFC 2188                          ESRO                    September 1997


         4.1.2 Service Provision (Performer User) .   .   .   .       24
     4.2 Protocol Procedures   .   .   .   .   .   .   .   .   .      25
         4.2.1 Service Access Point (SAP) Bind Procedure   .   .      25
         4.2.2 Invoke Service Procedure    .   .   .   .   .   .      25
         4.2.3 Invoke ID Assignment Procedure .   .   .   .   .       25
         4.2.4 Functional Unit Selection Procedure     .   .   .      26
     4.3 Connectionless PDU Transfer For Small PDUs    .   .   .      26
         4.3.1 Overview    .   .   .   .   .   .   .   .   .   .      26
         4.3.2 3-Way Handshake Functional Unit     .   .   .   .      28
         4.3.3 2-Way Handshake Functional Unit     .   .   .   .      35
         4.3.4 Segmentation and Reassembly     .   .   .   .   .      40
     4.4 Structure and Encoding of ESROS PDUs  .   .   .   .   .      43
         4.4.1 ESRO-INVOKE-PDU Format .   .   .   .   .   .   .       43
         4.4.2 ESRO-RESULT-PDU Format .   .   .   .   .   .   .       45
         4.4.3 ESRO-ERROR-PDU Format   .   .   .   .   .   .   .      46
         4.4.4 ESRO-ACK-PDU Format     .   .   .   .   .   .   .      47
         4.4.5 ESRO-FAILURE-PDU Format     .   .   .   .   .   .      47
         4.4.6 ESRO-INVOKE-SEGMENTED-PDU Format    .   .   .   .      48
         4.4.7 ESRO-RESULT-SEGMENTED-PDU Format    .   .   .   .      50
         4.4.8 ESRO-ERROR-SEGMENTED-PDU Format     .   .   .   .      51
     4.5 Concatenation and Separation  .   .   .   .   .   .   .      52
         4.5.1 Procedures .   .   .   .   .   .   .   .   .   .       53
         4.5.2 ESRO-CONCATENATED-PDU format    .   .   .   .   .      53
     4.6 ES Remote Operations Protocol Parameters  .   .   .   .      54
         4.6.1 PDU size    .   .   .   .   .   .   .   .   .   .      54
         4.6.2 Timers .   .   .   .   .   .   .   .   .   .   .       55
         4.6.3 Use of lower layers     .   .   .   .   .   .   .      56
  5  ACKNOWLEDGMENTS  .   .   .   .   .   .   .   .   .   .   .   .   56
  6  SECURITY CONSIDERATIONS  .   .   .   .   .   .   .   .   .   .   56
  7  AUTHORS' ADDRESSES   .   .   .   .   .   .   .   .   .   .   .   56

1  INTRODUCTION

   Efficient Short Remote Operations (ESRO) provide an efficent
   mechanism for realization of Remote Procedure Call.  This document
   specifies many aspects of ESRO including:

     o Service Model

     o Service Primitves

     o A Notation for user of the Service

     o Confirmed Connectionless Protocol (based on a 3-way hand-shake)

     o Unconfirmed Connectionless Protocol (based on a 2-way hand-shake)





Banan, et. al                Informational                      [Page 4]

RFC 2188                          ESRO                    September 1997


1.1  Relationship To Existing Remote Operation Services

   The overall model of ESRO is similar to and consistent with many
   existing protocols.  ESRO's distinguishing characteristic is
   efficiency.

   A brief comparison of ESRO and Remote Procedure Calls [7] and Remote
   Operation Service Elements [1] follows.

1.1.1  ESRO and RPC

   Remote Procedure Call (RPC) is specified in [7] (RFC-1831) and [6]
   (RFC-1833).

   RPC specifications define a remote procedure model that is
   essentially same as ESRO. RPC's notation uses a syntax quite
   different from that of ESRO. RPC can rely on a connection oriented or
   connectionless transport mechanism.  When using the connectionless
   mechanism, the retransmission and reliability issues are considered
   beyond the scope of the RPC specification.  RPC is usually used in
   combination with External Data Representation, XDR [8] (RFC-1832).

1.1.2  ESRO and ROSE

   ROSE is specified in [1] and [2].  The service definition for ESRO
   Service (ESROS) specified in this document is similar ROSE's
   Notation.  The Notation specified in this document for ESROS is
   similar ROSE's Notation.  The ESRO protocol specified in this
   document is very different from the ROSE protocol [2].

   The operation model for ESRO Service (ESROS) is based on Remote
   Operations Services Element (ROSE) in [1].  In ESROS model both
   entities can invoke operations.

   ESRO protocols can accomplish short operations with much less
   overhead than ROSE.

1.2  Overview of ESROS

   ESROS provides a service which supports interaction of applications
   based on a remote operation model.  A Remote Operation is invoked by
   one entity; the other entity attempts to perform the Remote Operation
   and then reports the outcome of the attempt.  The ESROS protocol is
   designed such that it could support many applications.







Banan, et. al                Informational                      [Page 5]

RFC 2188                          ESRO                    September 1997


1.3  The Remote Operation Model

   ESROS provides for performance of operations between two peer
   sublayers.  Users of the ESROS assume the roles of invoker and
   performer which invoke and perform the operations respectively.  An
   ESROS-User can assume both roles and be an invoker for some
   operations and be a performer for other operations.  The performer is
   expected to report either the result of the operation or an error.  A
   result reply is sent to the invoker if the operation is successful,
   and an error reply is sent if the operation is unsuccessful.  If the
   performer is unreachable, the ESROS sends a failure indication
   primitive to the invoker.

   Operations are asynchronous and the invoker may continue to invoke
   further operations without waiting for a reply.  Synchronous or
   serialized operations are also supported as a subset and a special
   case of asynchronous service.  By default the ESRO service provider
   on both invoker and performer sides supports the asynchronous
   operation invocation.  However, if one side is to support only
   serialized (synchronous) mode, it should be in agreement with the
   peer side.

   ESROS has no authentication mechanism.  Authentication is the
   responsibility of the performer (which is outside of the scope of
   ESROS) and the performer is not expected to honor the invoker when it
   is not authenticated.

   The ESROS operation model is represented in Figure 1.  In this
   example, the ESROS User on the left is the Invoker and the ESROS User
   on the right is the Performer.  The Provider is the entity providing
   a service to the layer above it.




















Banan, et. al                Informational                      [Page 6]

RFC 2188                          ESRO                    September 1997


⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?