传输层提供的服务是通过两端的传输实体之间所用的协议实现的! 传输层协议和数据链路层协议运行环境的差异: 在数据链路层:两个路由器(交换节点)通过数据链路直接通信;建立连接的过程简单,一个输出线对应一个路由器,且目的路由器一直处于等待连接状态。 在传输层:两端的主机通过整个通信子网进行通信;建立连接过程较复杂,有较复杂的寻址过程,并且经常存在多条连接,连接的数目也动态变化,因此传输层的缓冲器管理和流量控制较复杂。
一、传输协议的类型——传输层协议依赖网络层提供的服务。 网络层服务分类: A类:提供完善服务,分组的丢失、重复及乱序情况可忽略不计, 不使用N-RESET原语。 B类:分组很少丢失,但时常使用N-RESET原语,协议建立新的网络连接,重新同步,然后继续传输数据。 C类:提供完全不可靠的服务。用此类服务的传输层协议最复杂。 传输层协议分类: 0类(A类):最简单类,只提供建立和释放连接的机制。 1类(B类):基本错误恢复类,提供从N-RESET中恢复,不需要检错、流控。 2类(A类) :多路复用类,比0类增加了多路复用的功能。 3类(B类) :错误恢复和多路复用类,既可采用多路复用又可从N-RESET中恢复,且使用显式流量控制。 4类(C类) :错误检测和恢复类,能处理分组的丢失、重复,从N—RESET和其它错误中恢复,以及多路复用等功能,是最复杂的协议。 通信双方协商协议类型的过程:
本地用户进程在与远程用户进程建立连接时必须获取对方的TSAP地址! 获取远端TSAP地址的方法有两种: (1).固定TASP法:一些公共服务或固定不变的服务连到一些固定的用户周知的TSAP上。 ①远端某一公用进程,将自己连到122号TSAP,处于挂起状态。 ②源端机上的一个进程需查询时间时,发送连接请求原语T-CONNECT.Request,说明源地址为6号TASP,目标地址是122号TASP。 ③源端机的传输层收到请求后,在源主机和目的主机上选择NSAP,并建立一个网络连接,通过网络连接两传输实体可以通话。 ④源端机的传输实体用上述网络连接服务传输服务质量参数。 ⑤目标主机传输实体向时间服务进程发出一个T-CONNECT.Indication原语。如果122号TASP上的报时服务进程同意,就发出连接响应原语,返回到源端主机后,就建成传输连接。 (2).初始连接法:与远端进程通过远端的公用传送地址TSAP来建立连接。 注册进程:进程连接服务程序,常驻内存,并与固定TSAP连接。 传输服务用户在已知远端进程的TSAP地址后,如何知道该TSAP处于哪台机器上呢?
即如何知道用哪个NSAP建立网络连接呢? 可以由TSAP地址决定NSAP地址: TSAP地址 = <国家> <网络> <主机> <端口> NSAP地址 传输实体得到一个TSAP地址后,可用其中的NSAP地址建立一个网络连接。 传输连接是从TASP到TASP,网络连接是从NSAP到NASP,网络连接是传输连接的一部分,并且是不可靠的! 三次握手法——解决网络服务不可靠问题 不可靠因素:超时重传的连接请求TPDU因在网络内部滞留时间过长,连接释放后才到达目的端,使目的端误认为是新连接请求而发出确认予以连接,导致下一次源端真正再发请求建立连接时,目的端认为是重复请求而丢弃,连接不能实现。 解决办法:三次握手,即源端对目的端的回答响应还要用AK加以确认。
2.数据传输 (1).多路复用和分流 多路复用:将多个信息流较少的传输连接复用到一个网络连接上,以减少网络连接数目,降低费用。 分流:当一个用户进程的信息量大于一个网络连接(电路)所能传输的信息量时,该用户传输连接可同时打开多个网络连接(多条虚电路),实现对用户进程信息的分流传输,以保证传输信息的吞吐量的要求。
(2).流量控制和缓冲器管理 传输层流量控制的实现方法:采用可变窗口尺寸的动态缓冲器分配法。
3.释放连接——采用三次握手方法释放连接 由于通信子网不可靠,当突然发出断连请求时,有可能造成数据丢失! 解决方法:双方只有在确知对方所发出的数据已妥收,且本方也不准备再发数据时,才能发出断连请求,通常采用三次握手方法释放连接。
|