home *** CD-ROM | disk | FTP | other *** search
/ Handbook of Infosec Terms 2.0 / Handbook_of_Infosec_Terms_Version_2.0_ISSO.iso / text / rfcs / rfc1859.txt < prev    next >
Text File  |  1996-05-07  |  15KB  |  298 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7. Network Working Group                                        Y. Pouffary Request For Comments: 1859                 Digital Equipment Corporation Category: Informational                                     October 1995 
  8.  
  9.      ISO Transport Class 2 Non-use of Explicit Flow Control over TCP                            RFC1006 extension 
  10.  
  11. Status of this Memo 
  12.  
  13.    This memo provides information for the Internet community.  This memo    does not specify an Internet standard of any kind.  Distribution of    this memo is unlimited. 
  14.  
  15. Table of Contents 
  16.  
  17.    1. Introduction - General recommendations.......................2    2. The protocol.................................................3    2.1 TCP service as a Network Service - The Primitives...........3    2.2 Connection Establishment....................................4    2.3 Data Transfer...............................................5    2.4 Connection Release..........................................6    3. Packet Format................................................6    4. DIGITAL DECnet over TCP/IP...................................8    Acknowledgements................................................9    References......................................................9    Author's Address................................................9 
  18.  
  19. 1. Introduction - General recommendations 
  20.  
  21.    This document is an extension to STD35, RFC1006, a standard for the    Internet community. The document does not duplicate the protocol    definitions contained in RFC1006 and in International Standard ISO    8073.  It supplements that information with the description of how to    implement ISO Transport Class 2 Non-use of Explicit Flow Control on    top of TCP. 
  22.  
  23.    The document should be used in conjunction with the RFC1006 and ISO    8073. 
  24.  
  25.    The RFC1006 standard defines how to implement ISO 8073 Transport    Class 0 on top of TCP. This memo defines how to implement ISO 8073    Transport Class 2 Non-use of Explicit Flow Control on top of TCP.    Like ISO Transport Class 0, Class 2 Non-use of Explicit Flow Control    provides basic connection with minimal overhead. 
  26.  
  27.    A Transport protocol class is selected for a particular Transport    connection based upon the characteristics of the lower layers and the 
  28.  
  29.  
  30.  
  31. Pouffary                     Informational                      [Page 1] 
  32.  RFC 1859            ISO Transport and Flow Control          October 1995 
  33.  
  34.     requirements of the upper layer. Use of class 2 Non-use of Explicit    Flow Control is suitable when the use of separate virtual data    channels for normal and expedited Data are desirable or when an    explicit disconnection of the Transport connection is desirable. 
  35.  
  36.    Hosts which choose to implement this extension are expected to listen    on the well-known TCP port number 399. 
  37.  
  38.    It is recommended that the well-known RFC1006 TCP port 102 not be    used. This recommendation is done to minimise impact to an existing    RFC1006 implementation. 
  39.  
  40.    The memo also describes the use of this extension within the DIGITAL    Network Architecture (DNA). 
  41.  
  42. 2. The protocol 
  43.  
  44.    The protocol specified by this memo is fundamentally equivalent to    the protocol ISO 8073 Transport Class 2 Non-use of Explicit Flow    Control, with the following extensions: 
  45.  
  46.    - Expedited Data service is supported. 
  47.  
  48.    - Splitting and Recombining may be used for Expedited Data      transmission. 
  49.  
  50.    - The Network Service used is provided by TCP. 
  51.  
  52.    The ISO 8073 Transport protocol Class 2 allows Multiplexing. It is    recommended that this capability not be use for performance reasons. 
  53.  
  54.    The ISO 8073 Transport protocol exchanges information between peers    in discrete units of information called transport protocol data units    (TPDUs).  The protocol defined in this memo encapsulates these TPDUs    in discrete units called TPKTs.  The structure of these TPKTs and    their relationship to TPDUs are discussed in the next sections. 
  55.  
  56. 2.1 TCP service as a Network Service - The Primitives 
  57.  
  58.    The mapping between the TCP service primitives and the service    primitives expected by ISO 8073 Transport when operation over    Connection-oriented network service is straightforward. 
  59.  
  60.  
  61.  
  62.  
  63.  
  64.  
  65.  
  66.  
  67.  
  68. Pouffary                     Informational                      [Page 2] 
  69.  RFC 1859            ISO Transport and Flow Control          October 1995 
  70.  
  71.     Note: The following description of the mapping is a repeat from the    RFC1006 standard. 
  72.  
  73.    network service                 TCP    ---------------                 ---    CONNECTION ESTABLISHMENT 
  74.  
  75.            N-CONNECT.REQUEST       open completes 
  76.  
  77.            N-CONNECT.INDICATION    listen (PASSIVE open) finishes 
  78.  
  79.            N-CONNECT.RESPONSE      listen completes 
  80.  
  81.            N-CONNECT.CONFIRMATION  open (ACTIVE open) finishes 
  82.  
  83.    DATA TRANSFER 
  84.  
  85.            N-DATA.REQUEST          send data 
  86.  
  87.            N-DATA.INDICATION       data ready followed by read data 
  88.  
  89.    CONNECTION RELEASE 
  90.  
  91.            N-DISCONNECT.REQUEST    close 
  92.  
  93.            N-DISCONNECT.INDICATION connection closes or errors 
  94.  
  95.    Mapping parameters between the TCP service and the network service is    also straightforward: 
  96.  
  97.    network service                 TCP    ---------------                 ---    CONNECTION ESTABLISHMENT 
  98.  
  99.            Called address          server's IP address (4 octets) 
  100.  
  101.            Calling address         client's IP address (4 octets) 
  102.  
  103.            all others              ignored 
  104.  
  105.    DATA TRANSFER 
  106.  
  107.            NS-user data (NSDU)     data 
  108.  
  109.    CONNECTION RELEASE 
  110.  
  111.            all parameters          ignored 
  112.  
  113.  
  114.  
  115.  Pouffary                     Informational                      [Page 3] 
  116.  RFC 1859            ISO Transport and Flow Control          October 1995 
  117.  
  118.  2.2 Connection Establishment 
  119.  
  120.    The principles used in connection establishment are based upon those    described in ISO 8073, with the following extensions. 
  121.  
  122.    - Connection Request and Connection Confirmation TPDUs may negotiate      the use of Expedited Data transfer using the negotiation mechanism      specified in ISO 8073. 
  123.  
  124.    - Connection Request and Connection Confirmation TPDUs must not      negotiate the Use of Explicit Flow Control. 
  125.  
  126.    To perform an N-CONNECT.REQUEST action, the TS-peer performs an    active open to the desired IP address using the well know TCP port    399.  When the TCP signals either success or failure, this results in    an N-CONNECT.INDICATION action. 
  127.  
  128.    To await an N-CONNECT.INDICATION event, a server listens on the well    know TCP port 399.  When a client successfully connects to this port,    the event occurs and an implicit N-CONNECT.RESPONSE action is    performed. 
  129.  
  130. 2.3 Data Transfer 
  131.  
  132.    The elements of procedure used during transfer are based upon those    presented in ISO 8073, with the two following extensions. 
  133.  
  134.    - Expedited Data may be supported (if negotiated during connection      establishment). 
  135.  
  136.      In Non-Use of Explicit Flow Control Expedited Data requires no      Expedited Data Acknowledgement. 
  137.  
  138.    - Splitting and Recombining may be used for Expedited Data      transmission. 
  139.  
  140.      The procedure of Splitting and Recombining allows a transport      connection to make use of multiple TCP connections.      TCP connections created for Splitting purposes should also use      the primitives described in 2.1. 
  141.  
  142.      It is recommended to only create a second TCP connection for      Expedited Data when transmission of Expedited Data is requested. 
  143.  
  144.      Expedited Data must only be sent over an outgoing TCP connection.      This second TCP connection must not be shared among transport      connections and must remain established until the transport      connection is terminated, at which time it must be closed. 
  145.  
  146.  
  147.  
  148. Pouffary                     Informational                      [Page 4] 
  149.  RFC 1859            ISO Transport and Flow Control          October 1995 
  150.  
  151.     Implementors note: The procedure of Splitting and Recombining for    Expedited Data transmission guaranties that a congested Normal Data    TCP connection cannot block an Expedited Data TCP connection. It also    ensures independence of the Normal Data TCP connection from the    Expedited Data TCP connection. 
  152.  
  153.    To perform an N-DATA.REQUEST action, the TS-peer constructs the    desired TPKT and uses the TCP send data primitive. 
  154.  
  155.    To trigger an N-DATA.INDICATION action, the TCP indicates that data    is ready and a TPKT is read using the TCP read data primitive. 
  156.  
  157. 2.4 Connection Release 
  158.  
  159.    The elements of procedure used during a connection release are    identical to those presented in ISO 8073. 
  160.  
  161.    A connection can be terminated by the user in one of two ways: 
  162.  
  163.    - Abort Disconnect specifies that all messages at the source are not      required to be sent to the destination before the connection is      disconnected. 
  164.  
  165.    - Synchronous Disconnect specifies that all messages at the source      must be sent to the destination, and that all messages at the      destination must be delivered, before the connection is      disconnected. 
  166.  
  167.    Disconnect Request and Disconnect Confirmation TPDUs are exchanged in    both cases. The Disconnect Request TPDU carries a code indicating the    reason for the disconnection. 
  168.  
  169.    In the case of a Synchronous Disconnect the Disconnect Request reason    code is normal (80 hex). For an Abort Disconnect the Disconnect    Request reason code is normal with additional information parameter    value set to (c0 hex). 
  170.  
  171.    Upon receipt of a Disconnect Confirmation TPDU a N-DISCONNECT.REQUEST    action is performed to close the TCP connection. 
  172.  
  173.    If the TCP connection fails for some other reason, this generates an    N-DISCONNECT.INDICATION event. 
  174.  
  175. 3. Packet Format 
  176.  
  177.    A fundamental difference between TCP and the network service expected    by ISO transport is that TCP manages a continuous stream of octets,    with no explicit boundaries. 
  178.  
  179.  
  180.  
  181. Pouffary                     Informational                      [Page 5] 
  182.  RFC 1859            ISO Transport and Flow Control          October 1995 
  183.  
  184.     The protocol described in RFC1006 uses a simple packetization scheme    in order to delimit TPDUs. Each packet, termed a TPKT, consists of    two parts: a packet-header and a TPDU. 
  185.  
  186.    We use the same scheme described in RFC1006 for this extension.    There is no need to change the version number. The ISO transport TPDU    sufficiently describes the transport protocol class being used. 
  187.  
  188.    The format of the packet-header described below is a repeat from    RFC1006. 
  189.  
  190.        0                   1                   2                   3        0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+       |      vrsn     |    reserved   |          packet length        |       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 
  191.  
  192.          where: 
  193.  
  194.          vrsn                         8 bits 
  195.  
  196.          This field is always 3 for the version of the protocol          described in this memo. 
  197.  
  198.          packet length                16 bits (min=7, max=65535) 
  199.  
  200.          The packet length is the length of the entire packet in          octets, including packet-header. 
  201.  
  202.    The format of the ISO transport TPDU is defined in ISO 8073. 
  203.  
  204. 4. DIGITAL DECnet over TCP/IP 
  205.  
  206.    DECnet over TCP/IP is implemented using the DECnet Session Control    layer over this RFC1006 extension protocol. 
  207.  
  208.    The informational RFC defined in this document provides the Transport    Service functionality required by DECnet Applications while operating    over TCP/IP. 
  209.  
  210.    The next paragraph is a brief summary of the role of the DECnet    Session Control Layer. For further details, refer to the DIGITAL DNA    Session Control Layer Specification. 
  211.  
  212.    The DECnet Session Control Layer makes a Transport Service available    to End Users of a network. This layer is concerned with system-    dependent functions related to creating, maintaining, and destroying    Transport Connections.  Separate virtual data channels, known  as 
  213.  
  214.  
  215.  
  216. Pouffary                     Informational                      [Page 6] 
  217.  RFC 1859            ISO Transport and Flow Control          October 1995 
  218.  
  219.     "Normal"  and  "Expedited",  are provided to End Users. DECnet    Session Control must be guaranteed independence of these channels by    the Transport Layer. Expedited Data transmission cannot be blocked by    a congested normal data channel. DECnet Session Control requires that    all data in transit be delivered before initiating the release of the    Transport Connection. 
  220.  
  221.    DECnet, DNA, and the DIGITAL logo are trademarks of Digital Equipment    Corporation. 
  222.  
  223. Acknowledgements 
  224.  
  225.    Bill Duane, Jim Bound, David Sullivan, Mike Dyer, Matt Thomas, Dan    Harrington and many other members of the DECnet engineering team. 
  226.  
  227. References 
  228.  
  229.    [ISO8072]  ISO. "International Standard 8072.  Information               Processing Systems -- Open Systems Interconnection:               Transport Service Definition." 
  230.  
  231.    [ISO8073]  ISO. "International Standard 8073.  Information               Processing Systems -- Open Systems Interconnection:               Transport Protocol Specification." 
  232.  
  233.    [ISO8327]  ISO. "International Standard 8327.  Information               Processing Systems -- Open Systems Interconnection:               Session Protocol Specification." 
  234.  
  235.    [RFC791]   Postel, J., "Internet Protocol - DARPA Internet Program               Protocol Specification", STD 5, RFC 791,               USC/Information Sciences Institute, September 1981. 
  236.  
  237.    [RFC793]   Postel, J., "Transmission Control Protocol - DARPA               Internet Program Protocol Specification", STD 7, RFC               793, USC/Information Sciences Institute, September 1981. 
  238.  
  239.    [RFC1006]  Rose, M., and D. Cass, "ISO Transport Services on Top of               the TCP - Version: 3", STD 35, RFC 1006, Northrop               Research and Technology Center, May 1987. 
  240.  
  241.  
  242.  
  243.  
  244.  
  245.  
  246.  
  247.  
  248.  
  249.  
  250.  
  251. Pouffary                     Informational                      [Page 7] 
  252.  RFC 1859            ISO Transport and Flow Control          October 1995 
  253.  
  254.  Security Considerations 
  255.  
  256.    Security issues are not discussed in this memo. 
  257.  
  258. Author's Address 
  259.  
  260.    Yanick Pouffary    End Systems Networking    Digital Equipment Corporation    Centre Technique (Europe)    B.P. 027    950 Routes des colles    06901 Sophia antipolis, France 
  261.  
  262.    Phone: +33 92-95-62-85    Fax:   +33 92-95-62-32    EMail: pouffary@taec.enet.dec.com 
  263.  
  264.  
  265.  
  266.  
  267.  
  268.  
  269.  
  270.  
  271.  
  272.  
  273.  
  274.  
  275.  
  276.  
  277.  
  278.  
  279.  
  280.  
  281.  
  282.  
  283.  
  284.  
  285.  
  286.  
  287.  
  288.  
  289.  
  290.  
  291.  
  292.  
  293.  
  294.  
  295.  
  296.  Pouffary                     Informational                      [Page 8] 
  297.  
  298.