Tech-invite3GPPspaceIETFspace
959493929190898887868584838281807978777675747372717069686766656463626160595857565554535251504948474645444342414039383736353433323130292827262524232221201918171615141312111009080706050403020100
in Index   Prev   Next

RFC 0905

ISO Transport Protocol specification ISO DP 8073

Pages: 164
Unclassified
Obsoletes:  0892
Part 1 of 5 – Pages 1 to 34
None   None   Next

ToP   noToC   RFC0905 - Page 1
     Network Working Group                                         ISO
     Request for Comments:  905                             April 1984



                   ISO Transport Protocol Specification
                                ISO DP 8073
	

   Status of this Memo:       

     This document is distributed as an RFC for information only.   It
     does not specify a standard for the ARPA-Internet.

   Notes:

     1)  RFC 892 is an older version of  the  ISO  Transport  Protocol
         Specification.   Therefore  this  RFC  should  be  assumed to
         supercede RFC 892.

     2)  This document has been  prepared  by  retyping  the  text  of
         ISO/TC97/SC16/N1576  and  then  applying  proposed  editorial
         corrections  contained  in  ISO/TC97/SC16/N1695.   These  two
         documents,  taken  together, are undergoing voting within ISO
         as a Draft International Standard (DIS).

     3)  Although this RFC has been  reviewed  after  typing,  and  is
         believed  to  be  substantially  correct, it is possible that
         typographic errors not present in the ISO documents have been
         overlooked.

         Alex McKenzie
         BBN
ToP   noToC   RFC0905 - Page 2
                             Table of Contents




     1   SCOPE AND FIELD OF APPLICATION........................ 3
     1.1   This International Standard specifies:.............. 3
     1.2   The procedures are defined in terms of:............. 4
     1.3   .................................................... 4
     1.4   .................................................... 5
     2   REFERENCES............................................ 5
     3   DEFINITIONS........................................... 6
     3.1   .................................................... 6
     3.2   .................................................... 6
     3.2.1   equipment:........................................ 7
     3.2.2   transport service user:........................... 7
     3.2.3   network service provider:......................... 7
     3.2.4   local matter:..................................... 7
     3.2.5   initiator:........................................ 7
     3.2.6   responder:........................................ 8
     3.2.7   sending transport entity:......................... 8
     3.2.8   receiving transport entity:....................... 8
     3.2.9   preferred class:.................................. 8
     3.2.10   alternative class:............................... 8
     3.2.11   proposed class:.................................. 9
     3.2.12   selected class:.................................. 9
     3.2.13   proposed parameter:.............................. 9
     3.2.14   selected parameter:.............................. 9
     3.2.15   error indication:................................ 9
     3.2.16   invalid TPDU:................................... 10
     3.2.17   protocol error:................................. 10
     3.2.18   sequence number:................................ 10
     3.2.19   transmit window:................................ 10
     3.2.20   lower window edge:.............................. 11
     3.2.21   upper window edge:.............................. 11
     3.2.22   upper window edge allocated to  the  peer
       entity:
          .................................................... 11
     3.2.23   closed window:.................................. 11
     3.2.24   window information:............................. 11
     3.2.25   frozen reference:............................... 12
     3.2.26   unassigned reference:........................... 12
     3.2.27   transparent (data):............................. 12
ToP   noToC   RFC0905 - Page 3
     3.2.28   owner (of a network connection):................ 12
     3.2.29   retained TPDU:.................................. 12
     4   SYMBOLS AND ABBREVIATIONS............................ 13
     4.1   Data units......................................... 13
     4.2   Types of transport protocol data units............. 13
     4.3   TPDU fields........................................ 13
     4.4   Times and associated variables..................... 14
     4.5   Miscellaneous...................................... 14
     5   OVERVIEW OF THE TRANSPORT PROTOCOL................... 15
     5.1   Service provided by the transport layer............ 15
     5.2   Service assumed from the network layer............. 16
     5.3   Functions of the Transport Layer................... 18
     5.3.1   Overview of functions............................ 18
     5.3.1.1   Functions used at all times.................... 19
     5.3.1.2   Connection Establishment....................... 19
     5.3.1.3   Data Transfer.................................. 20
     5.3.1.4   Release........................................ 21
     5.4   Classes and options................................ 21
     5.4.1   General.......................................... 21
     5.4.2   Negotiation...................................... 22
     5.4.3   Choice of network connection..................... 22
     5.4.4   Characteristics of Class 0....................... 23
     5.4.5   Characteristics of Class 1....................... 23
     5.4.6   Characteristics of Class 2....................... 24
     5.4.6.1   General........................................ 24
     5.4.6.2   Use of explicit flow control................... 24
     5.4.6.3   Non-use of explicit flow control............... 24
     5.4.7   Characteristics of Class 3....................... 24
     5.4.8   Characteristics of Class 4....................... 25
     5.5   Model of the transport layer....................... 25
     6   ELEMENTS OF PROCEDURE................................ 27
     6.1   Assignment to network connection................... 27
     6.1.1   Purpose.......................................... 27
     6.1.2   Network service primitives....................... 27
     6.1.3   Procedure........................................ 28
     6.2   Transport protocol data unit (TPDU) transfer....... 29
     6.2.1   Purpose.......................................... 29
     6.2.2   Network Service Primitives....................... 30
     6.2.3   Procedure........................................ 30
     6.3   Segmenting and reassembling........................ 30
     6.3.1   Purpose.......................................... 30
     6.3.2   TPDUs and parameter used......................... 31
     6.3.3   Procedure........................................ 31
ToP   noToC   RFC0905 - Page 4
     6.4   Concatenation and separation....................... 31
     6.4.1   Purpose.......................................... 31
     6.4.2   Procedure........................................ 32
     6.5   Connection establishment........................... 32
     6.5.1   Purpose.......................................... 32
     6.5.2   Network service primitives....................... 33
     6.5.3   TPDUs and parameters used........................ 33
     6.5.4   Procedure........................................ 34
     6.6   Connection refusal................................. 40
     6.6.1   Purpose.......................................... 40
     6.6.2   TPDUs and parameters used........................ 40
     6.6.3   Procedure........................................ 41
     6.7   Normal release..................................... 41
     6.7.1   Purpose.......................................... 41
     6.7.2   Network service primitives....................... 42
     6.7.3   TPDUs and parameters used........................ 42
     6.7.4   Procedure for implicit variant................... 43
     6.7.5   Procedure for explicit variant................... 43
     6.8   Error Release...................................... 44
     6.8.1   Purpose.......................................... 45
     6.8.2   Network service primitives....................... 45
     6.8.3   Procedure........................................ 45
     6.9    Association   of   TPDUs   with   transport
       connections
          .................................................... 45
     6.9.1   Purpose.......................................... 45
     6.9.2   Network service primitives....................... 46
     6.9.3   TPDUs and parameters uses........................ 46
     6.9.4   Procedures....................................... 46
     6.9.4.1   Identification of TPDUs........................ 46
     6.9.4.2   Association of individual TPDUs................ 47
     6.10   Data TPDU numbering............................... 49
     6.10.1   Purpose......................................... 49
     6.10.2   TPDUs and parameters used....................... 49
     6.10.3   Procedure....................................... 50
     6.11   Expedited data transfer........................... 50
     6.11.1   Purpose......................................... 50
     6.11.2   Network service primitives...................... 50
     6.11.3   TPDUs and parameter used........................ 51
     6.11.4   Procedures...................................... 51
     6.12   Reassignment after failure........................ 52
     6.12.1   Purpose......................................... 52
     6.12.2   Network service primitives...................... 52
ToP   noToC   RFC0905 - Page 5
     6.12.3   Procedure....................................... 52
     6.12.4   Timers.......................................... 54
     6.13   Retention until acknowledgement of TPDUs.......... 56
     6.13.1   Purpose......................................... 56
     6.13.2   Network service primitives...................... 56
     6.13.3   TPDUs and parameters used....................... 56
     6.13.4   Procedures...................................... 57
     6.14   Resynchronization................................. 60
     6.14.1   Purpose......................................... 60
     6.14.2   Network service primitives...................... 60
     6.14.3   TPDUs and parameters used....................... 60
     6.14.4   Procedure....................................... 61
     6.14.4.1   Active resynchronization procedures........... 61
     6.14.4.2   Passive resynchronization procedures.......... 62
     6.14.4.3   Data Resynchronization Procedures............. 63
     6.15   Multiplexing and demultiplexing................... 64
     6.15.1   Purpose......................................... 64
     6.15.2   TPDUs and parameters used....................... 64
     6.15.3   Procedure....................................... 65
     6.16   Explicit Flow Control............................. 65
     6.16.1   Purpose......................................... 65
     6.16.2   TPDUs and parameters used....................... 65
     6.16.3   Procedure....................................... 66
     6.17   Checksum.......................................... 66
     6.17.1   Purpose......................................... 66
     6.17.2   TPDUs and parameters used....................... 66
     6.17.3   Procedure....................................... 67
     6.18   Frozen references................................. 68
     6.18.1   Purpose......................................... 68
     6.18.2   Procedure....................................... 68
     6.18.2.1   Procedure for classes 0 and 2................. 68
     6.18.2.2   Procedure for classes 1 and 3................. 69
     6.18.2.3   Procedure for classes 4....................... 70
     6.19   Retransmission on time-out........................ 70
     6.19.1   Purpose......................................... 70
     6.19.2   TPDUs used...................................... 70
     6.19.3   Procedure....................................... 70
     6.20   Resequencing...................................... 70
     6.20.1   Purpose......................................... 71
     6.20.2   TPDUs and parameters used....................... 71
     6.20.3   Procedure....................................... 71
     6.21   Inactivity control................................ 71
     6.21.1   Purpose......................................... 71
ToP   noToC   RFC0905 - Page 6
     6.21.2   Procedure....................................... 72
     6.22   Treatment of protocol errors...................... 72
     6.22.1   Purpose......................................... 72
     6.22.2   TPDUs and parameters used....................... 72
     6.22.3   Procedure....................................... 72
     6.23   Splitting and recombining......................... 74
     6.23.1   Purpose......................................... 74
     6.23.2   Procedure....................................... 74
     7   Protocol Classes..................................... 76
     8   SPECIFICATION FOR CLASS 0. SIMPLE CLASS.............. 79
     8.1   Functions of class 0............................... 79
     8.2   Procedures for class 0............................. 79
     8.2.1   Procedures applicable at all times............... 79
     8.2.2   Connection establishment......................... 79
     8.2.3   Data transfer.................................... 80
     8.2.4   Release.......................................... 80
     9    SPECIFICATION  FOR  CLASS  1:   BASIC   ERROR
       RECOVERY CLASS
          .................................................... 81
     9.1   Functions of Class 1............................... 81
     9.2   Procedures for Class 1............................. 81
     9.2.1   Procedures applicable at all times............... 81
     9.2.2   Connection establishment......................... 82
     9.2.3   Data Transfer.................................... 82
     9.2.3.1   General........................................ 82
     9.2.3.2   Expedited Data................................. 83
     9.2.4   Release.......................................... 84
     10   SPECIFICATION  FOR  CLASS  2  -  MULTIPLEXING
       CLASS
          .................................................... 85
     10.1   Functions of class 2.............................. 85
     10.2   Procedures for class 2............................ 85
     10.2.1   Procedures applicable at all times.............. 85
     10.2.2   Connection establishment........................ 86
     10.2.3   Data transfer when non  use  of  explicit
       flow control
          .................................................... 86
     10.2.4   Data transfer when use of  explicit  flow
       control
          .................................................... 86
     10.2.4.1   General....................................... 86
     10.2.4.2   Flow control.................................. 87
     10.2.4.3   Expedited data................................ 88
ToP   noToC   RFC0905 - Page 7
     10.2.5   Release......................................... 89
     11   SPECIFICATION FOR CLASS 3: ERROR RECOVERY AND
       MULTIPLEXING CLASS
          .................................................... 90
     11.1   Functions of Class 3.............................. 90
     11.2   Procedures for Class 3............................ 90
     11.2.1   Procedures applicable at all times.............. 90
     11.2.2   Connection Establishment........................ 91
     11.2.3   Data Transfer................................... 91
     11.2.3.1   General....................................... 91
     11.2.3.2   Use of RJ TPDU................................ 92
     11.2.3.3   Flow Control.................................. 93
     11.2.3.4   Expedited data................................ 93
     11.2.4   Release......................................... 94
     12   SPECIFICATION FOR CLASS  4:  ERROR  DETECTION
       AND RECOVERY CLASS
          .................................................... 95
     12.1   Functions of Class 4.............................. 95
     12.2   Procedures for Class 4............................ 95
     12.2.1   Procedures available at all times............... 95
     12.2.1.1   Timers used at all times...................... 95
     12.2.1.1.1   NSDU lifetime (MLR, MRL).................... 98
     12.2.1.1.2   Expected maximum transit delay  (ELR,
       ERL)
          .................................................... 98
     12.2.1.1.3   Acknowledge Time (AR, AL)................... 99
     12.2.1.1.4   Local retransmission time (T1).............. 99
     12.2.1.1.5   Persistence Time (R)........................ 99
     12.2.1.1.6    Bound  on  References  and  Sequence
       Numbers (L)
          ................................................... 100
     12.2.1.2   General Procedures........................... 100
     12.2.2   Procedures for Connection Establishment........ 102
     12.2.2.1   Timers used in Connection Establishment...... 102
     12.2.2.2   General Procedures........................... 103
     12.2.3   Procedures for Data Transfer................... 104
     12.2.3.1   Timers used in Data Transfer................. 104
     12.2.3.2   General Procedures for data transfer......... 104
     12.2.3.3   Inactivity Control........................... 105
     12.2.3.4   Expedited Data............................... 105
     12.2.3.5   Resequencing................................. 106
     12.2.3.6   Explicit Flow Control........................ 107
     12.2.3.7   Sequencing of received AK TPDUs.............. 108
ToP   noToC   RFC0905 - Page 8
     12.2.3.8   Procedure for transmission of AK TPDUs....... 109
     12.2.3.8.1   Retransmission of AK TPDUs for window
       synchronization
          ................................................... 109
     12.2.3.8.2   Sequence control for transmission  of
       AK TPDUs
          ................................................... 109
     12.2.3.8.3   Retransmission of AK TPDUs after  CDT
       set to zero
          ................................................... 110
     12.2.3.8.4   Retransmission  procedures  following
       reduction of the
          ................................................... 111
     12.2.3.9    Use  of  Flow   Control   Confirmation
       parameter
          ................................................... 112
     12.2.4   Procedures for Release......................... 113
     12.2.4.1   Timers used for Release...................... 113
     12.2.4.2   General Procedures for Release............... 113
     13   STRUCTURE AND ENCODING OF TPDUs.................... 114
     13.1   Validity......................................... 114
     13.2   Structure........................................ 116
     13.2.1   Length indicator field......................... 117
     13.2.2   Fixed part..................................... 117
     13.2.2.1   General...................................... 117
     13.2.2.2   TPDU code.................................... 117
     13.2.3   Variable part.................................. 118
     13.2.3.1   Checksum Parameter (Class 4 only)............ 120
     13.2.4   Data Field..................................... 120
     13.3   Connection Request (CR) TPDU..................... 120
     13.3.1   Structure...................................... 120
     13.3.2   LI............................................. 121
     13.3.3   Fixed Part (Octets 2 to 7)..................... 121
     13.3.4   Variable Part (Octets 8 to p).................. 122
     13.3.5   User Data (Octets p+1 to the end).............. 127
     13.4   Connection Confirm (CC) TPDU..................... 128
     13.4.1   Structure...................................... 128
     13.4.2   LI............................................. 128
     13.4.3   Fixed Part (Octets 2 to 7)..................... 128
     13.4.4   Variable Part (Octet 8 to p)................... 129
     13.4.5   User Data (Octets p+1 to the end).............. 129
     13.5   Disonnect Request (DR) TPDU...................... 129
     13.5.1   Structure...................................... 129
ToP   noToC   RFC0905 - Page 9
     13.5.2   LI............................................. 129
     13.5.3   Fixed Part (Octets 2 to 7...................... 130
     13.5.4   Variable Part (Octets 8 to p).................. 131
     13.5.5   User Data (Octets p+1 to the end).............. 131
     13.6   Disconnect Confirm (DC) TPDU..................... 132
     13.6.1   Structure...................................... 132
     13.6.2   LI............................................. 132
     13.6.3   Fixed Part (Octets 2 to 6)..................... 132
     13.6.4   Variable Part.................................. 133
     13.7   Data (DT) TPDU................................... 133
     13.7.1   Structure...................................... 133
     13.7.2   LI............................................. 134
     13.7.3   Fixed Part..................................... 134
     13.7.4   Variable Part.................................. 135
     13.7.5   User Data Field................................ 135
     13.8   Expedited Data (ED) TPDU......................... 135
     13.8.1   Structure...................................... 135
     13.8.2   LI............................................. 136
     13.8.3   Fixed Part..................................... 136
     13.8.4   Variable Part.................................. 137
     13.8.5   User Data Field................................ 137
     13.9   Data Acknowledgement (AK) TPDU................... 137
     13.9.1   Structure...................................... 137
     13.9.2   LI............................................. 138
     13.9.3   Fixed Part..................................... 138
     13.9.4   Variable Part.................................. 139
     13.10   Expedited Data Acknowledgement (EA) TPDU........ 140
     13.10.1   Structure..................................... 140
     13.10.2   LI............................................ 141
     13.10.3   Fixed Part.................................... 141
     13.10.4   Variable Part................................. 141
     13.11   Reject (RJ) TPDU................................ 141
     13.11.1   Structure..................................... 142
     13.11.2   LI............................................ 142
     13.11.3   Fixed Part.................................... 142
     13.11.4   Variable Part................................. 143
     13.12   TPDU Error (ER) TPDU............................ 143
     13.12.1   Structure..................................... 143
     13.12.2   LI............................................ 143
     13.12.3   Fixed Part.................................... 144
     13.12.4   Variable Part................................. 144
     14   CONFORMANCE........................................ 145
     14.1   ................................................. 145
ToP   noToC   RFC0905 - Page 10
     14.2   ................................................. 145
     14.3   ................................................. 145
     14.4   ................................................. 145
     14.5   ................................................. 146
     14.6   Claims of Conformance Shall State................ 146
ToP   noToC   RFC0905 - Page 11
     INTRODUCTION

     The Transport Protocol Standard is one of a set of  International
     Standards  produced to facilitate the interconnection of computer
     systems.  The set of standards covers the services and  protocols
     required to achieve such interconnection.

     The Transport Protocol Standard is  positioned  with  respect  to
     other  related  standards  by the layers defined in the Reference
     Model for Open Systems Interconnection (ISO 7498).   It  is  most
     closely  related  to, and lies within the field of application of
     the Transport Service Standard (DP 8072).  It also uses and makes
     reference  to  the  Network  Service  Standard  (DP  8348), whose
     provisions it  assumes  in  order  to  accomplish  the  transport
     protocol's  aims.   The  interelationship  of  these standards is
     depicted in figure 1.





     -------------------------TRANSPORT SERVICE DEFINITION------------
     Transport     | --- Reference to aims --------------
     Protocol      |
     Specification | --- Reference to assumptions -------
     -------------------------NETWORK SERVICE DEFINITION--------------

      Relationaship between Transport Protocol and adjacent services
                                Figure 1 .



     The International Standard specifies  a  common  encoding  and  a
     number  of  classes  of  transport protocol procedures to be used
     with different network qualities of service.

     It is intended that the Transport Protocol should be  simple  but
     general  enough  to  cater for the total range of Network Service
     qualities possible, without restricting future extensions.

     The protocol is structured to give rise to  classes  of  protocol
     which  are  designed  to  minimize possible incompatibilities and
     implementation costs.
ToP   noToC   RFC0905 - Page 12
     The classes are selectable with  respect  to  the  Transport  and
     Network Services in providing the required quality of service for
     the interconnection of two session entities (note that each class
     provides  a different set of functions for enhancement of service
     qualities).

     This protocol standard defines mechanisms that  can  be  used  to
     optimize  network  tariffs and enhance the following qualities of
     service:

        a)  different throughput rates;

        b)  different error rates;

        c)  integrity of data requirements;

        d)  reliability requirements.

     It does not  require  an  implementation  to  use  all  of  these
     mechanisms,  nor  does  it  define methods for measuring achieved
     quality of service or  criteria  for  deciding  when  to  release
     transport connections following quality of service degradation.

     The primary aim of this International Standard is  to  provide  a
     set  of  rules  for  communication  expressed  in  terms  of  the
     procedures to be carried out by peer  entities  at  the  time  of
     communication.   These  rules  for  communication are intended to
     provide a sound basis for development in order to serve a variety
     of purposes:

        a)  as a guide for implementors and designers;

        b)  for use in the testing and procurement of equipment;

        c)  as part of an agreement for the admittance of systems into
            the open systems environment;

        d)  as a refinement of the understanding of OSI.

     It is expected  that  the  initial  users  of  the  International
     Standard  will be designers and implementors of equipment and the
     International Standard contains, in notes or in annexes, guidance
     on the implementation of the procedures defined in the standard.
ToP   noToC   RFC0905 - Page 13
     It should  be  noted  that,  as  the  number  of  valid  protocol
     sequences  is  very  large,  it  is  not  possible  with  current
     technology to verify that  an  implementation  will  operate  the
     protocol  defined  in this International Standard correctly under
     all circumstances.   It  is  possible  by  means  of  testing  to
     establish  confidence  that  an implementation correctly operates
     the protocol in a representative sample of circumstances.  It is,
     however, intended that this International Standard can be used in
     circumstances where two implementations fail  to  communicate  in
     order to determine whether one or both have failed to operate the
     protocol correctly.

     This International Standard contains a section on conformance  of
     equipment   claiming   to   implement   the  procedures  in  this
     International Standard.  Attention is drawn to the fact that  the
     standard   does   not  contain  any  tests  to  demonstrate  this
     conformance.

     The variations and options available  within  this  International
     Standard  are  essential  to  enable  a  Transport  Service to be
     provided for a wide variety of applications  over  a  variety  of
     network  qualities.   Thus, a minimally conforming implementation
     will not be suitable for use in all possible  circumstances.   It
     is  important,  therefore,  to  qualify  all  references  to this
     International Standard with statements of the options provided or
     required  or with statements of the intended purpose of provision
     or use.




     1  SCOPE AND FIELD OF APPLICATION

     1.1  This International Standard specifies:

        a)  five classes of procedures:

            1) Class 0.  Simple class;
            2) Class 1.  Basic error recovery class;
            3) Class 2.  Multiplexing class;
            4) Class 3.  Error recovery and multiplexing class;
            5) Class 4.  Error detection and recovery class,
ToP   noToC   RFC0905 - Page 14
            for the connection oriented transfer of data  and  control
            information  from one transport entity to a peer transport
            entity;

        b)  the means of negotiating the class  of  procedures  to  be
            used by the transport entities;

        c)  the structure and encoding of the transport protocol  data
            units   used   for   the  transfer  of  data  and  control
            information;




     1.2  The procedures are defined in terms of:

        a)  the interactions between peer transport  entities  through
            the exchange of transport protocol data units;

        b)  the  interactions  between  a  transport  entity  and  the
            transport  service  user  in  the  same system through the
            exchange of transport service primitives;

        c)  the  interactions  between  a  transport  entity  and  the
            network  service  provider through the exchange of network
            service primitives.

     These procedures are defined in the main  text  of  the  standard
     supplemented by state tables in annex A.




     1.3

     These procedures are applicable  to  instances  of  communication
     between  systems  which  support  the  Transport Layer of the OSI
     Reference Model and which wish to interconnect in an open systems
     environment.
ToP   noToC   RFC0905 - Page 15
     1.4

     This   International   Standard   also   specifies    conformance
     requirements  for systems implementing these procedures.  It does
     not  contain  tests  which  can  be  used  to  demonstrate   this
     conformance.




     2  REFERENCES

     ISO 7498  Information   processing   systems   -   Open   systems
               interconnection - Basic Reference Model

     DP 8072   Information   processing   systems   -   Open   systems
               interconnection - Transport service definition

     DP 8348   Information   processing   systems   -   Open   systems
               interconnection  -  Connection-oriented network service
               definition.
ToP   noToC   RFC0905 - Page 16
     SECTION ONE.  GENERAL




     3  DEFINITIONS

     NOTE - The definitions contained  in  this  clause  make  use  of
     abbreviations defined in clause 4.




     3.1

     This International Standard is based on the concepts developed in
     the  Reference  Model for Open Systems Interconnection (DIS 7498)
     and makes use of the following terms defined in that standard:

        a)  concatenation and separation;

        b)  segmenting and reassembling;

        c)  multiplexing and demultiplexing;

        d)  splitting and recombining;

        e)  flow control.




     3.2

     For the purpose of this  International  Standard,  the  following
     definitions apply:
ToP   noToC   RFC0905 - Page 17
     3.2.1  equipment:

     Hardware or software or a combination of both;  it  need  not  be
     physically distinct within a computer system.




     3.2.2  transport service user:

     An abstract representation of  the  totality  of  those  entities
     within a single system that make use of the transport service.




     3.2.3  network service provider:

     An abstract machine that models  the  totality  of  the  entities
     providing the network service, as viewed by a transport entity.




     3.2.4  local matter:

     A decision made by  a  system  concerning  its  behavior  in  the
     Transport  Layer  that is not subject to the requirements of this
     protocol.




     3.2.5  initiator:

     A transport entity that initiates a CR TPDU.
ToP   noToC   RFC0905 - Page 18
     3.2.6  responder:

     A transport entity with whom an initiator wishes to  establish  a
     transport connection.

     NOTE - Initiator and responder are  defined  with  respect  to  a
     single  transport  connection.  A transport entity can be both an
     initiator and responder simultaneously.




     3.2.7  sending transport entity:

     A transport entity that sends a given TPDU.




     3.2.8  receiving transport entity:

     A transport entity that receives a given TPDU.




     3.2.9  preferred class:

     The protocol class that the initiator indicates in a CR  TPDU  as
     its first choice for use over the transport connection.




     3.2.10  alternative class:

     A protocol class that the initiator indicates in a CR TPDU as  an
     alternative choice for use over the transport connection.
ToP   noToC   RFC0905 - Page 19
     3.2.11  proposed class:

     A preferred class or an alternative class.




     3.2.12  selected class:

     The protocol class that the responder indicates in a CC TPDU that
     it has chosen for use over the transport connection.




     3.2.13  proposed parameter:

     The value for a parameter that the initiator indicates  in  a  CR
     TPDU that it wishes to use over the transport connection.




     3.2.14  selected parameter:

     The value for a parameter that the responder indicates  in  a  CC
     TPDU that it has chosen for use over the transport connection.




     3.2.15  error indication:

     An N-RESET indication,  or  an  N-DISCONNECT  indication  with  a
     reason code indicating an error, that a transport entity receives
     from the NS-provider.
ToP   noToC   RFC0905 - Page 20
     3.2.16  invalid TPDU:

     A TPDU that  does  not  comply  with  the  requirements  of  this
     International Standard for structure and encoding.




     3.2.17  protocol error:

     A TPDU whose use does not comply  with  the  procedures  for  the
     class.




     3.2.18  sequence number:

        a)  The number  in  the  TPDU-NR  field  of  a  DT  TPDU  that
            indicates  the  order in which the DT TPDU was transmitted
            by a transport entity.

        b)  The number in the YR-TU-NR field of an AK or RJ TPDU  that
            indicates the sequence number of the next DT TPDU expected
            to be received by a transport entity.




     3.2.19  transmit window:

     The set of consecutive sequence numbers which a transport  entity
     has been authorized by its peer entity to send at a given time on
     a given transport connection.
ToP   noToC   RFC0905 - Page 21
     3.2.20  lower window edge:

     The lowest sequence number in a transmit window.




     3.2.21  upper window edge:

     The sequence  number  which  is  one  greater  than  the  highest
     sequence number in the transmit window.




     3.2.22  upper window edge allocated to the peer entity:

     The value that a transport entity communicates to its peer entity
     to be interpreted as its new upper window edge.




     3.2.23  closed window:

     A transmit window that contains no sequence number.




     3.2.24  window information:

     Information contained in a TPDU relating to  the  upper  and  the
     lower window edges.
ToP   noToC   RFC0905 - Page 22
     3.2.25  frozen reference:

     A reference that is not available for assignment to a  connection
     because of the requirements of 6.18.




     3.2.26  unassigned reference:

     A reference that is neither currently in use  for  identifying  a
     transport connection or which is in a frozen state.




     3.2.27  transparent (data):

     TS-user  data  that  is  transferred  intact  between   transport
     entities  and  which  is  unavailable  for  use  by the transport
     entities.




     3.2.28  owner (of a network connection):

     The transport entity that issued the N-CONNECT request leading to
     the creation of that network connection.




     3.2.29  retained TPDU:

     A TPDU  that  is  subject  to  the  retransmission  procedure  or
     retention  until  acknowledgement  procedure and is available for
     possible retransmission.
ToP   noToC   RFC0905 - Page 23
     4  SYMBOLS AND ABBREVIATIONS

     4.1  Data units

        TPDU          Transport protocol data unit
        TSDU          Transport service data unit
        NSDU          Network service data unit




     4.2  Types of transport protocol data units

        CR TPDU          Connection request TPDU
        CC TPDU          Connection confirm TPDU
        DR TPDU          Disconnect request TPDU
        DC TPDU          Disconnect confirm TPDU
        DT TPDU          Data TPDU
        ED TPDU          Expedited data TPDU
        AK TPDU          Data acknowledge TPDU
        EA TPDU          Expedited acknowledge TPDU
        RJ TPDU          Reject TPDU
        ER TPDU          Error TPDU




     4.3  TPDU fields

        LI               Length indicator (field)
        CDT              Credit (field)
        TSAP-ID          Transport service access point
                         identifier (field)
        DST-REF          Destination reference (field)
        SRC-REF          Source reference (field)
        EOT              End of TSDU mark
        TPDU-NR          DT TPDU number (field)
        ED-TPDU-NR       ED TPDU number (field)
        YR-TU-NR         Sequence number response (field)
        YR-EDTU-NR       ED TPDU number response (field)
ToP   noToC   RFC0905 - Page 24
     4.4  Times and associated variables

        T1               Elapsed time between retransmissions
        N                The maximum number of transmissions
        L                Bound on reference
        I                Inactivity time
        W                Window time
        TTR              Time to try reassignment/resynchronization
        TWR              Time to wait for
                            reassignment/resynchronization
        TS1              Supervisory timer 1
        TS2              Supervisory time 2
        MLR              NSDU lifetime  local-to-remote
        MRL              NSDU lifetime  remote-to-local
        ELR              Expected maximum transit delay
                            local-to-remote
        ERL              Expected maximum transit delay
                            remote-to-local
        R                Persistence time
        AL               Local acknowledgement time
        AR               Remote acknowledgement time





     4.5  Miscellaneous


        TS-user          Transport service user
        TSAP             Transport service access point
        NS-provider      Network service provider
        NSAP             Network service access point
        QOS              Quality of service
ToP   noToC   RFC0905 - Page 25
     5  OVERVIEW OF THE TRANSPORT PROTOCOL

     NOTE - This overview is not exhaustive and has been provided  for
     guidance to the reader of this International Standard.




     5.1  Service provided by the transport layer

     The protocol specified in this  International  Standard  supports
     the transport service defined in DP 8072.

     Information is  transferred  to  and  from  the  TS-user  in  the
     transport service primitives listed in table 1.
ToP   noToC   RFC0905 - Page 26
     +-------------------------------------------------------------+
     |           Primitive            |        Parameter           |
     |--------------------------------|----------------------------|
     |T-CONNECT         request       |   Called Address,          |
     |                  indication    |   Calling Address,         |
     |                                |   Expedited Data option,   |
     |                                |   Quality of Service,      |
     |                                |   TS User-Data.            |
     |--------------------------------|----------------------------|
     |T-CONNECT         response      |   Responding Address,      |
     |                  confirm       |   Quality of Service,      |
     |                                |   Expedited Data option,   |
     |                                |   TS User-Data.            |
     |--------------------------------|----------------------------|
     |T-DATA            request       |   TS User-Data.            |
     |                  indication    |                            |
     |--------------------------------|----------------------------|
     |T-EXPEDITED DATA  request       |   TS User-Data.            |
     |                  indication    |                            |
     |--------------------------------|----------------------------|
     |T-DISCONNECT      request       |   TS User-Data.            |
     |--------------------------------|----------------------------|
     |T-DISCONNECT      indication    |   Disconnect reason,       |
     |                                |   TS User-Data.            |
     +--------------------------------|----------------------------+

                   Table 1. Transport service primitives





     5.2  Service assumed from the network layer

     The protocol specified in this International Standard assumes the
     use of the network service defined in DP 8348.

     Information is transferred to and from  the  NS-provider  in  the
     network service primitives listed in table 2.
ToP   noToC   RFC0905 - Page 27
     +---------------------------------------------------------------+
     |        Primitives          |X/Y|       Parameters       |X/Y/Z|
     |----------------------------|---|------------------------|-----|
     |N-CONNECT       request     | X | Called Address,        |  X  |
     |                indication  | X | Calling Address,       |  X  |
     |                response    | X | NS User-Data,          |  Z  |
     |                confirm     | X | QOS parameter set,     |  X  |
     |                            |   | Responding address,    |  Z  |
     |                            |   | Receipt confirmation   |  Y  |
     |                            |   | selection.             |     |
     |----------------------------|---|------------------------|-----|
     |N-DATA          request     | X | NS User-Data,          |  X  |
     |                indication  | X | Confirmation request   |  Y  |
     |----------------------------|---|------------------------|-----|
     |N-DATA ACKNOWLEDGE          |   |                        |     |
     |                request     | Y |                        |     |
     |                indication  | Y |                        |     |
     |----------------------------|---|------------------------|-----|
     |N-EXPEDITED DATA            |   |                        |     |
     |                request     | Y | NS User-Data.          |  Y  |
     |                indication  | Y |                        |     |
     |----------------------------|---|------------------------|-----|
     |N-RESET         request     | X | Originator,            |  Z  |
     |                indication  | X | Reason.                |  Z  |
     |                response    | X |                        |     |
     |                confirm     | X |                        |     |
     |----------------------------|---|------------------------|-----|
     |N-DISCONNECT    request     | X | NS User-Data.          |  Z  |
     |                indication  | X | Originator,            |  Z  |
     |                            |   | Reason.                |  Z  |
     +---------------------------------------------------------------+
                    Table 2. Network service primitives
ToP   noToC   RFC0905 - Page 28
     Key:

        X - The Transport  Protocol  assumes  that  this  facility  is
            provided in all networks.

        Y - The Transport  Protocol  assumes  that  this  facility  is
            provided  in  some networks and a mechanism is provided to
            optionally use the facility.

        Z - The Transport Protocol does not use this parameter.

     NOTES:

        1 - The parameters listed in  this  table  are  those  in  the
            current network service (first DP 8348).

        2 - The way the parameters are exchanged between the transport
            entity and the NS-provider is a local matter.




     5.3  Functions of the Transport Layer

     5.3.1  Overview of functions

     The functions in the  Transport  Layer  are  those  necessary  to
     bridge  the  gap  between the services available from the Network
     Layer and those to be offered to the TS-users.

     The functions in the  Transport  Layer  are  concerned  with  the
     enhancement  of  quality  of  service,  including aspects of cost
     optimization.

     These functions are grouped below into those used  at  all  times
     during a transport connection and those concerned with connection
     establishment, data transfer and release.

     NOTE - This International Standard does not include the following
     functions  which  are under consideration for inclusion in future
     editions of this standard:

        a)  encryption;
ToP   noToC   RFC0905 - Page 29
        b)  accounting mechanisms;

        c)  status exchanges and monitoring of QOS;

        d)  blocking;

        e)  temporary release of network connections;

        f)  alternative checksum algorithm.




     5.3.1.1  Functions used at all times

     The following functions, depending upon the  selected  class  and
     options, are used at all times during a transport connection:

        a)  transmission of TPDUs (see 6.2 and 6.9);

        b)  multiplexing and demultiplexing  (see  6.15),  a  function
            used  to  share a single network connection between two or
            more transport connections;

        c)  error detection (see 6.10, 6.13 and 6.17), a function used
            to  detect  the loss, corruption, duplication, misordering
            or misdelivery of TPDUs;

        d)  error recovery (see 6.12, 6.14, 6.18, 6.19, 6.20, 6.21 and
            6.22),  a  function  used  to  recover  from  detected and
            signalled errors.




     5.3.1.2  Connection Establishment

     The  purpose  of  connection  establishment  is  to  establish  a
     transport   connection   between  two  TS-users.   The  following
     functions of the transport layer during this phase must match the
     TS-users'  requested quality of service with the services offered
     by the network layer:
ToP   noToC   RFC0905 - Page 30
        a)  select network service which best matches the  requirement
            of  the  TS-user  taking  into account charges for various
            services (see 6.5);

        b)  decide whether to multiplex multiple transport connections
            onto a single network connection (see 6.5);

        c)  establish the optimum TPDU size (see 6.5);

        d)  select  the  functions  that  will  be  operational   upon
            entering the data transfer phase (see 6.5);

        e)  map transport addresses onto network addresses;

        f)  provide a  means  to  distinguish  between  two  different
            transport connections (see 6.5);

        g)  transport of TS-user data (see 6.5).




     5.3.1.3  Data Transfer

     The purpose of data transfer is to permit duplex transmission  of
     TSDUs  between  the  two  TS-users  connected  by  the  transport
     connection.   This  purpose  is  achieved  by  means  of  two-way
     simultaneous  communication  and by the following functions, some
     of which are used or not used in accordance with  the  result  of
     the selection performed in connection establishment:

        a)  concatenation and separation (see 6.4), a function used to
            collect  several  TPDUs  into a single NSDU at the sending
            transport  entity  and  to  separate  the  TPDUs  at   the
            receiving transport entity;

        b)  segmenting and reassembling (see 6.3), a function used  to
            segment  a  single  data  TSDU  into multiple TPDUs at the
            sending transport entity and to reassemble them into their
            original format at the receiving transport entity;
ToP   noToC   RFC0905 - Page 31
        c)  splitting and recombining (see 6.23), a function  allowing
            the simultaneous use of two or more network connections to
            support the same transport connection;

        d)  flow control (see 6.16), a function used to  regulate  the
            flow  of  TPDUs  between  two  transport  entities  on one
            transport connection;

        e)  transport connection identification, a means  to  uniquely
            identify  a  transport  connection  between  the  pair  of
            transport entities supporting the  connection  during  the
            lifetime of the transport connection;

        f)  expedited data (see 6.11), a function used to  bypass  the
            flow  control  of  normal  data TPDU.  Expedited data TPDU
            flow is controlled by separate flow control;

        g)  TSDU delimiting (see 6.3), a function  used  to  determine
            the beginning and ending of a TSDU.




     5.3.1.4  Release

     The  purpose  of  release  (see  6.7  and  6.8)  is  to   provide
     disconnection  of  the  transport  connection,  regardless of the
     current activity.




     5.4  Classes and options

     5.4.1  General

     The functions of the Transport Layer  have  been  organized  into
     classes and options.

     A class  defines  a  set  of  functions.   Options  define  those
     functions within a class which may or may not be used.

     This International Standard defines five classes of protocol:
ToP   noToC   RFC0905 - Page 32
        a)  Class 0:  Simple Class;

        b)  Class 1:  Basic Error recovery Class;

        c)  Class 2:  Multiplexing Class;

        d)  Class 3:  Error Recovery and Multiplexing Class;

        e)  Class 4:  Error Detection and Recovery Class.

     NOTE - Transport connections  of  classes  2,  3  and  4  may  be
     multiplexed together onto the same network connection.




     5.4.2  Negotiation

     The use of classes and options is  negotiated  during  connection
     establishment.   The  choice  made by the transport entities will
     depend upon:

        a)  the TS-users' requirements expressed via T-CONNECT service
            primitives;

        b)  the quality of the available network services;

        c)  the user required service versus cost ratio acceptable  to
            the TS-user.




     5.4.3  Choice of network connection

     The following  list  classifies  network  services  in  terms  of
     quality  with  respect  to  error  behavior  in  relation to user
     requirements; its main purpose is to  provide  a  basis  for  the
     decision  regarding  which  class of transport protocol should be
     used in conjunction with given network connection:
ToP   noToC   RFC0905 - Page 33
        a)  Type A.  Network connection with acceptable residual error
            rate  (for  example  not signalled by disconnect or reset)
            and acceptable rate of signalled errors.

        b)  Type B.   Network  connections  with  acceptable  residual
            error  rate  (for  example  not signalled by disconnect or
            reset) but unacceptable rate of signalled errors.

        c)  Type C.  Network connections  with  unacceptable  residual
            error rate.

     It is assumed that each transport entity is aware of the  quality
     of service provided by particular network connections.




     5.4.4  Characteristics of Class 0

     Class 0 provides the simplest type of transport connection and is
     fully  compatible  with the CCITT recommendation S.70 for teletex
     terminals.

     Class 0 has  been  designed  to  be  used  with  type  A  network
     connections.




     5.4.5  Characteristics of Class 1

     Class 1  provides  a  basic  transport  connection  with  minimal
     overheads.

     The main  purpose  of  the  class  is  to  recover  from  network
     disconnect or reset.

     Selection of this class is usually based on reliability criteria.
     Class  1  has  been  designed  to  be  used  with  type B network
     connections.
ToP   noToC   RFC0905 - Page 34
     5.4.6  Characteristics of Class 2

     5.4.6.1  General

     Class 2 provides a way to multiplex several transport connections
     onto  a  single network connection.  This class has been designed
     to be used with type A network connections.




     5.4.6.2  Use of explicit flow control

     The objective is to provide flow control to help avoid congestion
     at transport-connection-end-points and on the network connection.
     Typical use is when traffic is  heavy  and  continuous,  or  when
     there  is  intensive  multiplexing.   Use  of  flow  control  can
     optimize response times and resource utilization.




     5.4.6.3  Non-use of explicit flow control

     The objective is to provide a  basic  transport  connection  with
     minimal  overheads  suitable  when  explicit disconnection of the
     transport connection is desirable.  The option would typically be
     used for unsophisticated terminals, and when no multiplexing onto
     network  connections  is  required.   Expedited  data  is   never
     available.




     5.4.7  Characteristics of Class 3

     Class 3 provides the characteristics of Class 2 plus the  ability
     to  recover  from network disconnect or reset.  Selection of this
     class is usually based upon reliability criteria.   Class  3  has
     been designed to be used with type B network connections.


(next page on part 2)

Next Section