源进程如何获知目的进程的TSAP? 在客户-服务器模式中,客户进程如何知道服务器 进程的TSAP? 常用的标准服务:使用众所周知的地址 不常用的服务:使用进程服务员 需要特殊硬件的服务:使用目录服务 TSAP只是一种抽象,通常可由一个消息队列实现
源进程如何获知目的进程的TSAP? 在客户-服务器模式中,客户进程如何知道服务器 进程的TSAP? 常用的标准服务:使用众所周知的地址 不常用的服务:使用进程服务员 需要特殊硬件的服务:使用目录服务 TSAP只是一种抽象,通常可由一个消息队列实现
进程服务员的使用 Host 1 Host 2 Host 1 Host 2 Time- Layer server, User Process Process Server Server TSAP
进程服务员的使用
22建立传输连接 当应用程序要求传输层保持消息发送顺序 时,传输层必须提供面向连接的服务。 所谓建立连接,就是在收发两端为通信过 程分配好资源,并初始化相关的数据结构。 在一个不可靠的网络中可靠地建立传输连 接是一件困难的事情
2.2 建立传输连接 当应用程序要求传输层保持消息发送顺序 时,传输层必须提供面向连接的服务。 所谓建立连接,就是在收发两端为通信过 程分配好资源,并初始化相关的数据结构。 在一个不可靠的网络中可靠地建立传输连 接是一件困难的事情
问题之一:过时消息的干扰 重复的连接请求及响应消息对正常的连接 建立过程产生干扰。 解决办法之 给每个连接指定一个连接标识,每个主机记录 已用过的连接标识。 资源消耗大,不可靠。 解决办法之 限制每个数据包的寿命
问题之一:过时消息的干扰 重复的连接请求及响应消息对正常的连接 建立过程产生干扰。 解决办法之一: 给每个连接指定一个连接标识,每个主机记录 已用过的连接标识。 资源消耗大,不可靠。 解决办法之二: 限制每个数据包的寿命
问题之二:起始序号的选取 主机崩溃后可能丢失所有的状态信息,包括每个连接上要分 配的下一个TPDU序号。主机恢复工作后,新连接上的TPDU 序号可能和过时连接上的序号相同,产生混淆。 解决办法之 主机重启后至少等待时间再建立连接,确保崩溃前的分组均已消失。 解决办法之二:基于时钟的起始序号选取算法 每个主机使用一个时钟,以二进制计数器的形式工作,每隔AT计数 器加1。当一个连接建立时,以计数器当前值的最低k位(TPDU的序 号长度)作为起始的IPDU序号 该方法确保连接的起始序号随时间单调增长
问题之二:起始序号的选取 主机崩溃后可能丢失所有的状态信息,包括每个连接上要分 配的下一个TPDU序号。主机恢复工作后,新连接上的TPDU 序号可能和过时连接上的序号相同,产生混淆。 解决办法之一: 主机重启后至少等待时间T再建立连接,确保崩溃前的分组均已消失。 解决办法之二:基于时钟的起始序号选取算法 每个主机使用一个时钟,以二进制计数器的形式工作,每隔ΔT计数 器加1。当一个连接建立时,以计数器当前值的最低k位(TPDU的序 号长度)作为起始的TPDU序号。 该方法确保连接的起始序号随时间单调增长