1、中华人民共和国国家标准信息处理系统开放系统互连面向连接的运输协议规范发布实施国家技术监督局发布中华人民共和国国家标准信息处理系统开放系统互连面向连接的运输协议规范国家技术监督局批准实施引言本标准等同采用国际标准信息处理系统开放系统互连面向连接的运输协议规范本标准是为了便于信息处理系统互连而制订的一组标准之一这组标准包括为完成这种互连所要求的服务和协议按照开放系统互连基本参考模型定义的各层及其他有关标准来确定运输协议标准的位置本标准与运输服务标准联系最为紧密并处于其应用范围之内它还使用和参考网络服务标准在我国国家标准制定前参考以便实现运输协议的目标这些标准之间的相互关系如图所示图运输协议和相邻服
2、务之间的关系本标准详细说明了公共编码及用于各种不同网络服务质量的各类运输协议规程本标准旨在力求使运输协议简单而通用足以适应所有可能的网络服务质量但又不限制将来的扩充将本协议分成几个协议类是为了尽可能减少不兼容性和降低实现的费用根据为两个会话实体互连提供所要求的服务质量的运输服务和网络服务来选择协议类为提高服务质量每类协议提供不同的功能集本标准定义了可用来优化网络收费和提高下列服务质量的机制不同的吞吐率不同的差错率数据完整性要求可靠性要求本标准既不要求一个具体实现使用所有这些机制也不规定测量获得的服务质量的方法和在服务质量降级之后决定何时释放运输连接的准则本标准的主要目标是为了提供一组通信规则这
3、组通信规则以对等实体在通信时所执行的若干规程来表达这些通信规则旨在为下列各种用途提供坚实的开发基础即作为实现者和设计者的指南供设备测试和采购时使用作为准许系统接入开放系统环境的一部分协定加深对的理解由于期望本标准的最初用户将是设备的设计者和实现者因而它在其注解或附录中包含对实现标准中的各种规程的指导应该指出由于有效的协议序列数量巨大所以要用当前的技术来验证一个具体实现能在任何环境下正确地执行本标准所规定的协议是不可能的但是通过测试可以相信一个具体实现在典型环境下正确执行本协议然而当两个具体实现不能通信时本标准可用来确定是其中一方还是双方都不能正确执行协议本标准内有一篇是有关实现本标准各规程的设
4、备的一致性声明值得注意的是本标准中并未包含任何验证这种一致性的测试本标准内可用的各种变量和选项对于在各种网络服务质量上为广泛应用提供运输服务是必不可少的于是一个最低限度遵守协议的具体实现将不适于在所有可能的环境中使用为此为提供或要求的选项条文或预先规定的或预期使用的条文来限制对这个标准的所有引用是重要的主题内容与适用范围本标准规定五类规程类简单类类基本差错恢复类类复用类类差错恢复和复用类类差错检测和恢复类这五类规程是为从一个运输实体向对等运输实体传送面向连接的数据和控制信息规定的协商运输实体使用的规程类的方法用于传送数据和控制信息的运输协议数据单元的结构和编码各规程从下列几个方面来定义对等运输
5、实体间通过交换运输协议数据单元进行的交互在同一系统中运输实体和运输服务用户之间通过交换运输服务原语进行的交互运输实体和网络服务提供者之间通过交换网络服务原语进行的交互这些规程是在本标准的正文中规定的附录补充件中的状态表对本标准作了补充这些规程适用于支持参考模型运输层的以及希望在一个开放系统环境中互连的系统间通信的实例本标准还规定了对于实现这些规程的系统的一致性要求但它并不包含能用来验证这种一致性的测试引用标准信息处理系统开放系统互连基本参考模型信息处理系统开放系统互连运输服务定义注下述标准在相应国家标准未制订前应引用归口所的译文信息处理系统数据通信面向连接的网络服务定义第一篇概述术语注在本章中
6、所包含的术语使用了第章中规定的缩写本标准以开放系统互连基本参考模型提出的一些概念为基础并使用在该标准中定义的下列术语拼接和分割分段和合段复用和解复用分流与合流流量控制本标准还使用下列术语设备硬件软件或二者的结合在计算机系统中不需要在物理上加以明显地区分运输服务用户在一个系统内使用运输服务的全部实体的抽象表示网络服务提供者运输实体所看到的抽象机制模仿提供网络服务的全部实体局部事态系统作出的决定它涉及运输层中非本协议要求的系统行为发起者发出的运输实体响应者发起者希望与其建立运输连接的运输实体注发起者和响应者是相对于一个运输连接定义的单个运输实体可以同时是发起者和响应者发送运输实体发送给定的运输实体
7、接收运输实体接收给定的运输实体优选类发起者在中指出作为在该运输连接上首先选用的协议类可替换类发起者在中指出作为在该运输连接上可替换的协议类建议类优选类或可替换类选定类响应者在中指出它已在该运输连接上选用的协议类建议参数发起者在中指出它希望在该运输连接上使用的参数值选定参数响应者在中指出它已选择的在该运输连接上选用的参数值差错指示运输实体从提供者收到的一个或者收到一个带有指示差错原因的无效不遵守本标准在结构和编码方面要求的协议差错的用法不符合该类规程序号在的字段内的编号它指出运输实体发送该的次序在或的字段内的编号它指出运输实体期望接收的下一个的序号发送窗口对等实体允许运输实体在给定时间内在给定运
8、输连接上发送的一组连续序号窗口下缘发送窗口的最小序号窗口上缘比发送窗口最大序号大的序号分配给对等实体的窗口上缘运输实体通知它的对等实体作为它的新的窗口上缘的值闭合窗口不含序号的发送窗口窗口信息包含在中的有关窗口上下缘的信息冻结参照符因条的要求对于指定的连接不可分配的参照符未分配的参照符既不是目前用于标识运输连接的又不是处于冻结状态的参照符透明数据完整地在运输实体间传送并不可为运输实体使用的用户数据网络连接的拥有者发出并导致建立网络连接的运输实体保留的与重传规程或者与确认前的保留规程有关的它用于可能的重传符号和缩写数据单元运输协议数据单元运输服务数据单元网络服务数据单元运输协议数据单元的类型连接
9、请求连接证实拆接请求拆接证实数据加速数据数据确认加速确认拒绝差错的字段长度指示器字段信用量字段运输服务访问点标识符字段目的参照符字段源参照符字段结束标记编号字段编号字段响应序号字段响应编号字段时间和相关的变量两次重传间的时间最大发送次数参照符和序号的界限不活动时间窗口时间试图重新分配重新同步的时间等待重新分配重新同步的时间监视计时器监视计时器本地至远地的的生存期远地至本地的的生存期期望的本地至远地的最大输送延迟期望的远地至本地的最大输送延迟持续时间本地确认时间远地确认时间其他用户运输服务用户运输服务访问点提供者网络服务提供者网络服务访问点服务质量运输协议的概述注本概述并非详尽无遗仅作指南运输层
10、提供的服务本标准中所规定的协议支持所定义的运输服务用表所列的运输服务原语传送用户的往来信息表运输服务原语原语参数被呼地址主呼地址加速数据选项服务质量用户数据响应地址服务质量加速数据选项用户数据用户数据拆接原因用户数据假定的网络层服务本标准中规定的协议假定使用中定义的网络服务用表所列的各网络服务原语传送提供者的往来信息注在表中所列的是那些现行的网络服务参数见在运输实体和提供者之间交换参数的方式是局部事态表网络服务原语原语参数被呼地址主呼地址接收证实选择加速数据选择参数组用户数据响应地址接收证实选择加速数据选择参数组用户数据续表原语参数用户数据证实请求用户数据始发者原因始发者原因用户数据响应地址注
11、运输协议假定所有网络都提供这个业务运输协议假定某些网络中提供这个业务并为选用该业务提供机制运输协议不使用这个参数并当在网络服务原语中接收到时忽略之运输层功能功能概述运输层的功能是为填补从网络层得到的服务和要提供给用户的服务之间的空白所必需的那些功能运输层的功能与提高服务质量有关包括费用优化的各个方面下面把这些功能分为在运输连接期间始终使用的功能和与连接建立数据传送及释放有关的功能注本标准内不包括正在考虑并拟在将来版本中收入的下列功能加密记帐机制状态转换和的监控分块网络连接的暂时释放可替换的校验和算法始终使用的功能根据所选类和选项运输连接期间始终使用下述功能的传输见和条复用和解复用见条两个或两个
12、以上的运输连接共享一个网络连接的功能差错检测见和条检测的丢失讹误重复失序误投的功能差错恢复见和条从检测到的和被告知的差错中恢复的功能连接建立连接建立的目的是在两个用户之间建立一个运输连接在这个阶段内运输层具有能使用户所要求的服务质量与网络层提供的服务相匹配的下列功能选择最适合于用户要求的网络服务要考虑到各种服务的费用见条决定多个运输连接是否复用单个网络连接见条建立最佳的大小见条选择进入数据传送阶段要用的功能见条运输地址映射成网络地址提供区分两个不同运输连接的方法见条用户数据的运输见条数据传送数据传送的目的是由运输连接所连接的两个用户间能双工传输通过双向同时通信和下列功能来实现这个目的根据连接建
13、立阶段作出的选择决定是否使用其中某些功能拼接和分割见条在发送运输实体处把几个组合成一个而在接收运输实体处分割出原的功能分段和合段见条在发送运输实体处把一个数据分成多个而在接收运输实体处把它们合并成原格式的功能分流和合流见条允许同时使用两个或两个以上的网络连接来支持同一个运输连接的功能流量控制见条在一个运输连接上的两个运输实体间调节流量的功能运输连接标识在运输连接的生存期内支持该连接的一对运输实体之间唯一标识运输连接的方法加速数据见条旁路常规数据流量控制的功能加速数据流量是受独立的流量控制来控制的的定界见条用来确定的开始和结束的功能释放释放见和条的目的是提供运输连接的拆接而不考虑当前的活动类和选
14、项概述运输层的功能按类和选项组织一个类定义一个功能集而选项定义一个类内部可以使用也可以不使用的功能本标准定义五个协议类类简单类类基本差错恢复类类复用类类差错恢复和复用类类差错检测和恢复类注和类的运输连接可复用同一个网络连接类不指定检测未告知的网络运输失败的机制协商在连接建立阶段协商所使用的类和选项由运输实体作出的选择取决于通过服务原语表示的用户的要求可用的网络服务质量用户容许的用户所要求的服务与费用之比网络连接的选择为了确定与给定的网络连接一起使用哪一类运输协议根据与用户要求的差错行为有关的质量来对网络服务分类如下型具有容许的残留差错率例如未由拆接或复位告知的残留差错率和容许的被告知的差错率的
15、网络连接型具有容许的残留差错率例如未由拆接或复位告知的残留差错率和不容许的被告知差错率的网络连接型具有不可接受的残留差错率的网络连接假定每个运输实体都知道特定网络连接所提供的服务质量类的特征类提供最简型的运输连接它与的智能用户电报终端的建议完全兼容类已设计成和型网络连接联用类的特征类提供具有最小开销的基本运输连接本类主要目的是可从网络拆接或复位中得到恢复这一类的选择通常以可靠性准则为基础已将该类设计成和型网络连接联用类的特征概述类提供一种多个运输连接复用单个网络连接的方法该类已设计成和型网络连接联用使用显式流量控制目的是提供流量控制以帮助避免运输连接端点和网络连接上的拥挤其典型应用是在持续通信
16、量大或繁重的复用时使用流量控制可以优化响应时间和资源利用不使用显式流量控制目的是在要求进行运输连接的显式拆接时提供具有适宜的最小开销的基本运输连接该选项典型地用于各种简单的终端以及不要求复用网络连接的场合绝不可使用加速数据类的特征类除提供类的各个特征外还提供从网络拆接或复位中得到恢复的能力这一类的选择通常以可靠性准则为依据类已设计成和型网络连接联用类的特征类除具有类的各个特征外还提供差错检测和恢复能力这些差错是由于网络服务提供者所提供的低级服务产生的这些待检测的差错包括丢失失序重复以及的讹误这些差错可能影响控制和数据本类还提供提高吞吐的能力以及为防止网络失败提供附加的恢复能力类已设计成和型网络
17、连接联用运输层模型一个运输实体通过一个或多个使用运输服务定义见中所定义的各个服务原语与它的用户通信服务原语或者引起在支持一个运输连接的对等运输实体间交换运输协议数据单元或者是这种交换的结果通过一个或多个利用网络服务定义见中所定义的网络服务时会影响这些协议的交换在端系统中使用一个内部的与实现有关的机制来标识各个运输连接端点从而用户和运输实体能引用每个运输连接注作为说明图中对每个运输实体只画出一个和一个在某些实例中一个特定的运输实体可与多个和或多个相关图运输层的模型第二篇运输协议规范规程元素本章包含在第章章中所用的协议类规范中使用的规程元素这些元素本身是无意义的规程定义的传送它们的结构和编码在第章
18、中详细说明运输实体将接受和响应在一个合法的中收到的任何还可能发生一些这些启用本章中说明的规程的初始专用元素注本规范已不包括对待定的规程元素无意义的网络服务原语以及所用的参数分配给网络连接目的在所有类中本规程用来把运输连接分配给网络连接网络服务原语本规程使用下列网络服务原语规程每个运输连接都要分配给一个网络连接发起者可以把运输连接分配给一个它已拥有的现存的网络连接或者分配给一个为此目的而创建的新网络连接见注如果考虑复用见注情况下建议的协议类或用于该运输连接的类别与网络连接的当前用法复用方面不兼容发起者就不应该把运输连接分配或重新分配给现存的网络连接在失败后的重新同步见条及重新分配见条期间运输实体
19、可以把运输连接重新分配给连接相同的另一个网络连接只要它是该网络连接的拥有者而且该运输连接在任何给定的时刻只分配给一个网络连接在执行分流规程见条期间运输实体可以把一个运输连接分配给连结相同的任何其他网络连接假如它是该网络连接的拥有者而且可以复用该网络连接当网络连接的非拥有者接收到以下之一时它就能知道这种分配在执行连接建立规程见条期间的一个在执行失败后重新同步和重新分配见条规程期间的一个或一个重传的或使用分流见条时的任何注在创建一个新的网络连接时虽然要求的服务质量通常与希望分配给它的运输连接的要求有关但它是一个局部事态如果通过使用或增强网络连接不能获得运输连接所要求的服务质量该现存的网络连接还是不
20、适用的初始建立或者因先前分配的运输连接已全部释放而未分配有运输连接的网络连接是可以存在的建议这种网络连接只能由它的拥有者释放此外还建议不要在运输连接的最后一个发送之后立即释放它不管这个是响应的还是响应的一个适当的延迟可使有关的能到达另一个运输实体从而释放与该运输连接有联系的所有资源网络连接失败之后先前被复用在一起的运输连接可以分配给不同的网络连接反之亦然运输协议数据单元的传送目的在所有类中传送规程用来运送网络服务原语中的用户数据字段中的运输协议数据单元网络服务原语本规程使用下列网络服务原语规程中列出了协议定义的运输协议数据单元当为类选用网络加速变体时运输实体将把和作为原语的用户数据参数进行发送
21、和接收在其他所有情况下运输实体将把和作为原语的用户的数据参数进行发送和接收当把放入用户数据字段时一个八位位组内各位的意义以及一个内的各个八位位组的次序如条中定义注几个可以被拼接见条分段和合段目的在所有类中分段和合段规程用来把映射到所用的和参数本规程使用下列和参数结束规程运输实体必须把一个映射成一个或多个有序的这个序列在同一个运输连接上不应被其他打断除序列长度大小的序列中的最后一个外其他所有的的数据长度都必须大于注的参数指出序列里是否还有后续的不要求的长度必须等于建立连接时选定的最大长度拼接和分割目的在和类中拼接和分割规程用来在一个内运送多个规程当维持与协议操作相兼容的给定运输连接上的的次序时运
22、输实体可以拼接来自同一个或不同的运输连接的被拼接的合法组可包含任何数量的下列只要这些来自不同的运输连接不多于个的下列如果这个存在的话应将其放在被拼接的组的末尾运输实体接受被拼接的合法组注利用长度指示器参数可以区分被拼接的组内的各个用的终止来指示包含数据的的结束条中所述的被拼接的的个数要受到分配和重新分配期间之外被复用在一起的运输连接的最大个数的限制连接建立目的在所有类中连接建立规程用来创建一个新的运输连接网络服务原语本规程使用下列网络服务原语所用的和参数本规程使用下列和参数置为类和选项即优选的类使用扩充的格式在类中不使用显式流量控制主呼被呼的大小建议的版本号保护参数校验和附加选项的选择即在类时
23、使用网络加速类时使用接收证实在类时不使用校验和使用运输加速数据传送服务可替换协议类确认时间吞吐量建议的残留差错率建议的优先级建议的输送延迟建议的重新分配时间用户数据类和选项选定的主呼被呼的大小选定的保护参数校验和附加选项的选择选定的确认时间吞吐量选定的残留差错率选定的优先级选定的输送延迟选定的用户数据规程运输实体发起者发送到另一个运输实体响应者后者用回答来建立运输连接发送之前发起者把正在建立的运输连接分配给一个或多个如果正在使用分流规程的话网络连接就在这组网络连接上发送注即使发起者将运输连接分配给多个网络连接除非收到一个才能在同一网络连接上发送所有如果重复或其字段置为的这些是在收到之前发送的这
24、样做很有必要因为远地实体可能不支持类因而也不能识别分流如果已经进行了其他分配则只能在收到类的之后使用之见条分流规程在交换期间将交换和协商运输实体操作所需要的全部信息和参数注除类外建议发起者在发送时启动可选的计时器当认为连接被接受或拒绝或不成功时就应停止该计时器若计时器计满则发起者应该复位或拆接网络连接并在类或类时冻结该参照符见条对于所有在同一网络连接上复用的其他运输连接来说遵守相应的复位或拆接规程当收到未期望的重复类作为优选类时在和类中应忽略它在类中则回送对于包含确认前的保留规程的的类来说在收到后发起者应按照表的定义确认这个见条当已同意用加速数据传送见条的网络加速变体时只可能在类响应者不应在被
25、确认之前发送下列信息参与交换参照符每个运输实体选择一个供对等实体使用的参照符其长度为位除下列限制外它是任意的它不能是已使用或冻结的见条它不能为该机制是对称的并提供与网络连接无关的运输连接的标识在给定的运输实体里用于运输连接的参照符范围是一种局部事态地址任选指出主呼和被呼运输服务访问点当任一网络地址能明确地定义运输地址时可省略这个信息初始信用量仅与含有显式流量控制功能的那些类有关用户数据如果类是优选类见注则不用在其他类中可包含至多个位位组注根据表如果类是一个合法的响应那么在中包括用户数据会使响应实体拒绝连接例如如果它只支持类确认时间仅用于类校验和参数仅用于类保护参数本参数及其语义由用户定义进行下
26、列协商协议类发起者应建议一个优选类和任意多个可替换类这些可替换类允许如表中定义的一种有效响应发起者应假定当它发送时对方会同意它建议的优选类并开始执行与该类有关的规程除非类或类是一个可替换类否则要到收到一个选择使用或类的时才开始复用注这些意味着当优选类包括重新同步时见条如果连接建立期间被告知要复位则需重新同步响应者选择表中定义的一个类作为对应于优选类以及中可替换类参数指出的类如果存在的话的合法响应它指出中选定的类并遵守选定类的规程如果不选该优先类则发起者收到时就按选定类规程调整其操作注表中指出的有效响应可经过两种协商产生一种是显式协商即每一个建议类都是一个有效响应另一种是隐式协商如果类或类是建议
27、类那么类是一个合法响应如果类是建议类那么类是有效响应从类到类以及从任一类到编号较高类的协商是无效的冗余组合不是协议差错表对应于优选类及中建议的任意可替换类的有效响应优选类可替换类无无效无效无效无效无效类类或类类或类无效无效无效类或类类或类无效类无效无效类类或类类或类类或类类或类无效类或类类或类类或类类或类类或类类或类类或类的大小发起者可以建议的最大长度响应者可以接受这个数值或者用和可用值集内的建议值间任意一个值响应见条注的长度不超过个位位组见条常规或扩充格式常规或扩充格式都是可用的使用扩充格式时的参数包括以及等校验和的选择它确定连接的是否包括校验和服务质量参数它确定吞吐量输送延迟优选级和残留差
28、错率注正如要求先前所述平均大小作为任何规范的基础一样运输服务定义了输送延迟本协议如条中指定使用个八位位组值基于其他值的转换是局部事态在类中不使用显式流量控制采用类时使用网络接收证实和网络加速使用加速数据传送服务允许用户双方协商是否使用在运输服务中定义的加速数据运输服务下列信息只在中发送版本号确定用于该连接的运输协议标准的版本重新分配时间参数这个参数指示发起者要在失败规程之后维持重新分配的时间该项的协商规则是发起者可建议使用或不使用该选项响应者可以接受这项建议也可以选择表中定义的可替换选择在类中每当运输实体请求或同意加速数据传送服务或使用扩充格式时它也分别请求或同意使用显式流量控制表连接建立期间
29、选项的协商选项发起者提出的建议响应者的合法选择加速数据传送服务仅类是否是或否否使用接收证实仅类是否是或否否使用网络加速变体仅类是否是或否否不使用校验和仅类是否是或否否不使用显式流量控制仅类是否是或否否使用扩充格式仅类是否是或否否注表定义了选项的协商规程这种协商设计成如果发起者建议用第章说明的必有的实现选项除了使用可能被用户所拒绝的运输加速数据传送服务外响应者必须遵循使用该连接上的选项如果发起者建议用一个非必有的实现选项那么响应者就有权在该运输连接上选择必有的实现选项连接拒绝目的运输实体在对的回答中拒绝运输连接时在所有类中使用连接拒绝规程使用的和参数本规程使用下列和参数原因用户数据拒绝原因无效的
30、规程如果运输连接不能被接受响应者应使用来回答原因字段指示为什么不能接受该连接中的源参照符字段被置为指示未被分配的参照符如果发起者接收到发起者则认为该连接被释放响应者应通过发送或来回答无效的如果发起者接收到响应的则认为该连接已被释放注当类作为优选类并识别出无效的时建议用来响应对其他的无效可发送也可发送如已为该连接设置任选的监视计时器则发起者一旦接收到或就停止该监视计时器常规释放目的运输实体用常规释放规程来结束运输连接隐式变体仅在类中使用显示变体在和类中使用注用隐式变体即在类时运输连接的生存期直接与网络连接的生存期有关使用释放规程的显式变体释放运输连接而与所用的网络连接无关网络服务原语本规程使用下
31、列网络服务原语只用于隐式变体使用的和参数本规程使用下列和参数原因用户数据隐式变体规程在隐式变体里任一运输实体可通过拆接该运输连接所分配给的网络连接来拆接该运输连接当运输实体接收到时应把它看作是运输连接的释放显式变体规程当运输连接将要开始释放时运输实体如果它先前已发送或接收了一个见注则应发送丢掉随后接收到的除或以外的全部一旦收到或它就认为该运输连接被释放如果不适用则应对于类以外的其他类等待尚未完成的的确认如果它收到则执行条的规程对于类既可发送一个字段置为的也可遵循的规程对于前者忽略后继收到的指定类的收到其他类的处理如下若为类断开网络连接否则发送字段置为收到的中字段值的且继续进行释放规程接收的运输
32、实体将如果它先前已为同一个运输连接发送了那么就认为该运输连接被释放如果它先前已发送了一个还未由所确认的那么就认为该连接被拒绝见条注这种情况下被相联而不管其见条若字段非建议按字段的值发送到远地如果和都不适用发送并认为该运输连接已释放如果收到的字段为的则发送一个为的而不管本地参照符注如果接收这种的实体已在先前决定协商降低协议类该实体总是有权把这种看作讹误由于没有建立联系运输连接在响应方不被释放然而当发送后将用作回答讹误这个要求保证运输实体知道运输连接的远地参照符值当认为运输连接被释放的时候本地参照符或者可供重新使用或者被冻结见条释放运输连接后可以释放网络连接也可以保持它使它能重新用于其他运输连接的
33、分配见条除类外建议如果运输实体在的计时期间未收到的确认那么它应复位或拆接该网络并在适当的时候见条冻结参照符对其他在该网络连接上复用的所有运输连接来说执行相应的复位或拆接规程当运输实体在发送前等待时并且网络连接已被复位或已被释放就认为该运输连接已释放而且除类外的其他各类要冻结该参照符见条差错释放目的仅在类或类中当接收到或时本规程用来释放一个运输连接网络服务原语本规程使用下列服务原语规程当在一个已分配给一个运输连接的网络连接上收到或时两个运输实体都将认为该运输连接被释放并照此通知用户注在其他类中由于使用差错恢复所以接收到或将导致调用差错恢复规程和运输连接的联系目的在所有类中本规程用来把收到的解释为
34、如果可能的话还把每个这样的和一个运输连接联系起来网络服务原语本规程使用下列网络服务原语使用的和参数本规程使用下列和参数除类中的和类中的外的任何和或类中的类中的规程的标识如果接收到的或加速的不能被解码即不包含一个或多个正确的或者已被讹误即包含一个具有错误校验和的那么运输实体应如果检测到差错的网络连接分配有一个类或类运输连接则该运输连接作为协议差错处理见条否则如果该能被解码但包含被讹误的那么丢弃该只在类并可任意选用如果该不能被解码则对网络连接发出一个或对分配给这个网络连接的所有运输连接如果有的话使用为处理被告知的网络复位或拆接而定义的规程如果能被解码并且未被讹误则运输实体应如果接收到的网络连接分配
35、有一个类运输连接则认为这个构成一个并且把该与该运输连接联系起来见条否则调用分割规程然后对每一个单独的按其在中出现的次序应用条定义的规程各间的联系若接收到的是一个而且如果它是一个由网络连接的及参数识别的重复那么就把它和用原先值建立的运输连接联系起来否则把它作为请求建立一个新的运输连接来处理如果接收到的是一个而且该网络连接分配有一个类或类的运输连接或者是一个而且该网络连接分配有一个类运输连接那么就把这个和该运输连接联系起来否则就用该的参数标识该运输连接下列情况要加以区分如果未给运输连接分配那么该运输实体应在同一个网络连接上作出响应如果该是用响应如果是用响应如果既不是也不是就丢弃该不作出任何和运输连
36、接的联系注如果带有置成零的字段则不发送如果运输连接分配了但这个是在未分配该运输连接的网络连接上接收到的那么有下列三种情况如果该运输连接是类并且是在具有和同一对的网络连接上接收到的那么认为该执行分配如该运输连接未被分配给任何网络连接失败后等待重新分配并且是在和同一对的网络连接上接收到的那么就和那个运输连接联系起来否则就认为该有一个未分配给运输连接的情况如果该是就把它和分配有的运输连接相联系除非不是期望的那一个在这种情况下丢弃该如果该是那么有四种情况如果不是期望的那么就回送一个其与接收到的的相等的并且不作任何联系如果未被确认那么把该与该运输连接联系不考虑它的参数值如果运输实体实现类为零且未确认或等
37、待则将与具有为远地参照符的运输连接相关联否则就把该和由该参数标识的运输连接相联系如果是一个其参数标识的已打开的连接先前已接收到的连接的并且该的和远地参照符不匹配那么就回送一个与接收到的的相等的并且不作任何联系若上述情况都不适用就把该和由参数标识的运输连接相联系编号目的在选定不使用显式流量控制选项时除外和类中使用数据编号目的是使之能使用恢复流量控制以及重新排序等功能使用的和参数本规程使用下列和参数规程运输实体应把序号分配给在运输连接上发送的第一个的对随后在同一运输连接上发送的该运输实体应为其分配比前一序号大的序号当重传时参数应具有和它第一次发送的相同的值选用常规格式时使用模算法选用扩充格式时使用
38、模算法在本标准内大于和小于关系适用于一组邻接的编号其范围小于模且开始编号和结束编号是已知的术语小于意味着在窗口序列里较早发生术语大于意味着在窗口序列里较迟发生加速数据传送目的加速数据传送规程是在连接建立期间选定的网络常规数据变体在和类中使用网络加速变体仅在类中使用网络服务原语本规程使用下列网络服务原语使用的和参数本规程使用下列和参数规程每个的用户数据参数作为加速数据的数据字段来运送每个接收到的应由加速确认来确认在运输连接的每个方向上任何时候至多保留一个未确认的未被确认数据字段长度为的将作为协议差错处理注在已同意使用网络加速变体仅在类可用的情况下和在原语的数据字段中运送见条除此之外使用网络常规数
39、据变体只有在被确认之后才能用网络加速变体来传输以防止网络变体加速超越失败后的重新分配目的在类和类中失败后的重新分配规程用于从提供者告知的拆接开始恢复网络服务原语本规程使用下列网络服务原语规程对于分配有运输连接的网络连接在收到时发起者应采用下列可替换的方法中的一个如果计时器还未到时并且没有处于保持状态那么把运输连接分配给一个不同的网络连接见条并且如果它的计时器还未启动则启动之在等待完成重新分配时如果接收到则重复条的规程如果计时器计满则开始的规程重新分配完成时开始重新同步见条并且如果因重新同步而接收到一个合法则停止计时器或者如果超时则等待下一个事件或者如果接收到一个那么根据计时器情况开始执行条的规
40、程或执行条的规程注溢出后当等待下一个事件时建议发起者置计时器若计时器在下一事件前溢出发起者开始条中的规程如果计时器计时已结束则认为该运输连接被释放并且冻结参照符见条如果保留并且计时器尚未超时那么可执行条或条的动作如果响应者的计时器尚未启动响应者则应启动该计时器由于发起者的重新同步与运输连接有关的第一个的到达就完成了失败后的重新分配计时停止响应者将继续执行重新同步见条如果在这段时间内不发生重新分配就认为该运输连接被释放并且冻结参照符见条计时器失败后的重新分配规程使用两个计时器试图重新分配重新同步时间的计时器等待重新分配重新同步时间的计时器发起者使用计时器它的值不超过两分钟减去最大拆接传播延迟时间
41、加网络连接输送延迟时间之和见注计时器的值可在中指出响应者使用计时器如果中有重新分配时间参数计时器的值就应大于计时器的值加最大拆接传播延迟时间加网络连接输送延迟时间之和如果中不存在重新分配时间参数计时器应用的默认值注假定要求的服务质量得到满足可被置为即不重新分配例如当提供者产生的拆接速率很低时就可进行该项操作在中包含的重新分配时间参数允许响应者使用小于的值如果使用任选的和计时器建议当或启动时若或正在运行则停止它们当相应的分别为或重复时如果必要重新启动或和的值要选得大于值确认前的保留目的在和类中确认前的保留用来在可能丢失之后能重传并且使重传次数减到最少当在连接建立期间同意接收证实变体时接收证实变体
42、只在类中使用见注当在连接建立期间不同意接收证实变体时变体用于和类也用于类注接收证实变体的使用依赖于网络层接收证实服务及降低费用的期望网络服务原语本规程使用下列网络服务原语使用的和参数本规程使用下列和参数和和规程发送时应保留下列副本以备重传和下列情况除外若发送以响应则不必保留的副本这些中的每一个应保留不变直到按照表的规定确认或者直到释放运输连接在仅适用于类的接收证实变体中接收到运送或并且有证实请求字段组的的运输实体发出见注和注注每个运输实体决定哪个应有证实请求参数集是局部事态这个决定一般与可用于保留副本的存储量有关使用证实请求参数可能会影响网络服务质量表的确认保留的变体用下列确认之前的保留两种变
43、体或两种变体或在冲突时接收证实变体或变体或接收证实变体对应于运送或随之后来的的续表保留的变体用下列确认之前的保留变体大于中的或两种变体等于中的重新同步目的在类和类中重新同步规程用于在复位后或按条所述的失败后重新分配期间使运输连接恢复正常网络服务原语本规程使用下列网络服务原语使用的和参数本规程使用下列和参数和规程接到发生的通知或根据条正在执行失败后重新分配的运输实体应执行主动重新同步规程见条除下列任一种情况外运输实体是响应者在这种情况下执行被动重新同步规程见条运输实体已选定不作重新分配见条注在情况下不发生重新同步主动重新同步规程运输实体应执行下列动作之一如果先前已启动计时器并且已计满即没有收到有
44、效的则认为运输连接已被释放并且冻结该参照符见条否则启动计时器除非它已在运行并采取下列首先可用的动作如果未确认则该运输实体应重传该如果未确认则该运输实体应重传该否则运输实体执行数据重新同步规程条当收到一个合法时停止计时器被动重新同步规程运输实体要等到接收了一个时才发送如果计时器还未启动因先前的或则运输实体就启动它如果在接收到一个开始执行重新同步的有效即或之前该计时器计满就认为该运输连接已被释放同时释放参照符见条接收到一个有效时运输实体应停止它的计时器并根据该执行下列适当的动作之一如果它是则该运输实体发送如果它是重复的见注则执行下列适当的动作之一如果已发送了并得到确认作协议差错处理如果一个未得到确
45、认不论是否被确认重传该并把源参照符置为如果尚未从用户处收到不做任何动作否则重传跟在任何未被确认的见注和任何后的注根据一个是否在一个有适当网络地址的网络连接上以及是否有正确的源参照符来识别它是不是一个重复的在得到确认见条之前运输实体不应使用网络加速这项规则可防止网络加速超越该如果它是一个或则执行下列动作之一如果未被确认则运输实体重传该否则运输实体执行数据重新同步规程见条如果未被确认则或是对该的确认如果从未发送过应认为或是协议差错数据重新同步规程运输实体将以下列次序执行下列动作发送或重新发送任何未被确认的发送一个它的字段被置成下一个期望的的字段值除非已收到或否则等待从另一个运输实体来的下一个如果收
46、到则运输实体发送冻结该参照符通知用户拆接且不采取进一步动作也就是说它将不执行的规程如果接收到则应执行的规程如果接收到则执行条所述的规程如果它是一个重复的运输实体用一个对它确认丢弃重复的并再次等待下一个发送和重新发送未被确认的受可用流量控制规程见注影响的任何注可能减小信用量复用和解复用目的在和类中复用和解复用规程用来使几个运输连接同时共享一个网络连接使用的和参数本规程使用下列和参数和规程运输实体应能在同一网络连接上发送和接收属于不同运输连接的注在执行解复用时所用的运输连接由条中所定义的规程决定复用允许拼接属于不同运输连接的并使其可在同一个原语中传送见条显式流量控制目的在和类中显式流量控制规程用来
47、调节与其他层流量控制无关的的流量使用的和参数本规程使用下列和参数和子序号流量控制证实规程本规程在不同类中是不同的它们分别在说明各类的条文内定义校验和目的校验和规程用来检测由提供者造成的的讹误注虽然校验和算法必须适应在网络连接上期望的各种差错类型但目前只定义了一种算法使用的和参数本规程使用下列和参数所有校验和规程校验和只在类中使用总要使用它除非在连接建立期间选择不使用校验和外其他所有的都应使用它发送运输实体应发送具有能满足式子校验和的参数组的模模式中内八位位组编号即位置见条位置为的八位位组值的以八位位组为单位的长度在已同意使用校验和的运输连接上接收时如其校验和不满足上述两式则运输实体应丢弃该见注
48、当接收到一个讹误的并将发出回答时则应将接收到的中出现的校验和置入回答中但是如果实现不支持校验和算法则不这么做一个不支持校验和的实体总可以认为请求第类协议的是正确的并因此进行协商降低协议类注附录中给定一个确定校验和参数的有效算法如果校验和不正确就不可能确切知道该与哪个运输连接有关对分配给网络连接的所有运输连接可采取进一步的动作见条建议的校验和是容易计算的因此不会在实现时造成沉重的负担不过它不检测首尾端的插入和丢失也不检测某些八位位组内的错序当在网络连接上收到一个时由于它可能是一个执行重新分配的因而不可能确切知道仅有类运输连接使用该网络连接因此检查有效性的唯一方法如下如果网络连接用于类或类运输连接
49、则无校验和检查代码推导固定部分的长度从推导可变部分查看参数如果有校验和参数则核实之如果不正确就认为运输连接是类并将其丢弃如果正确就把与一个运输连接相联系如果运输连接使用校验和则认为正确否则认为是协议差错冻结参照符目的当与过去使用的某参照符相关联的可能仍然存在时本规程用来防止再次使用该参照符规程运输实体决定某个特定的连接被释放时它应根据该类规程冻结分配给该连接的参照符参照符被冻结时不能重新使用注冻结参照符的规程是必要的因为在一个运输实体已释放了分配有该参照符的连接之后重传或错序能使带有参照符的到达该运输实体例如当该类包括有重新同步条或计满重传的时候就会发生重传见条类和类用的规程冻结参照符的规程不用于这两类注但为和其他有冻结参照符的各类一致起见可作为一种局部事态来执行类和类用的规程除下列情况见注外均使用冻结参照符的规程当运输实体接收以响应它所发出的时见注当运输实体发送或以响应它已接收到的时见注当计时器计满后运输实体已认为连接被释放时见注当运输实体接收或以响应它所发出的时参照符保持冻结的时间应大于的时间注但是即使在这些情况下为了一致起见冻结参