📄 rfc905.txt
字号:
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 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 i 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 ii 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 iii 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 iv 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 v 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 vi 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 vii
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -