ATM使用的是面向连接的分组交换技术(采用定长分组——信元)。那么,ATM是否提供了可靠交付的服务呢
参考答案:否。
“面向连接的分组交换技术”并不等于“提供可靠交付的服务”。
有的计算机网络使用面向连接的分组交换技术,同时也提供了可靠交付的服务。例如,X.25网络就是这样的计算机网络。所谓提供可靠交付的服务,是指在目的主机收到的分组中,无差错、无重复、无丢失,按序接收(就是收到的分组的先后顺序和发送时的顺序一样)。为什么X.25网络具有这些的特点呢因为X.25网络所传送的分组使用发送序号和确认序号,并且还有重传机制(就像在数据链路层讲的连续ARQ协议那样)。因此,X.25网络能够提供可靠交付的服务。
X.25网络在计算机网络的发展过程中曾起到了很好的推动作用,因为在当初,通信线路的误码率还较高,提供可靠交付的服务可以非常有效地在不甚可靠的通信网络中传送计算机数据。
但是后来光纤技术的大量使用,使得通信线路的误码率大大降低。在这种新的情况下,在这种可靠的链路上,每传送一个分组的数据,都反复要进行确认。这就等于在基本上不会产生什么差错的前提下,还不断地向链路的接收端发出询问:“请检查出现传输差错没有,并发回确认”。这样做,就使得通信效率降低。为此,出现了快速分组交换。如ATM和帧中继就属于这一类的快速分组交换。这类快速分组交换.省略了在X.25中的发送序号和确认序号,减少了大量的、复杂的差错控制过程。在差错控制中,每个中间结点仅使用CRC检验(在ATM技术中,CRC仅检验首部中的前4个字节有无差错产生,连后面的有效载荷都不进行检验)。当发现有差错时,CRC检验器就静悄悄地把出错的分组丢弃,以免让这些已经无用的分组继续浪费网络的资源。因此,这样的简化的差错控制过程,不能够提供可靠交付的服务。但这样做带来的好处很大——大大地加快了分组转发的过程。
当出现差错时,最后是接收端的高层软件会发现这个问题。怎样处理出现的差错,由高层软件决定。例如,如果高层应用程序是IP电话,那么对于链路层的处理根本不必管它(见第10章有关IP电话的部分)。
OSI在数据链路层和网络层都采用面向连接技术,所传送的协议数据单元都有发送序号和确认序号,另外还有重传机制。因此,在OSI体系中.面向连接的分组交换技术的确能够提供可靠交付的服务。但对于非OSI体系,情况就不一定是这样了。
总之,虽然面向连接能够在某些方面提供更好的服务质量QoS,但“面向连接的分组交换技术”并不是“提供可靠交付的服务”的同义词。我们常提到的面向连接的分组交换网络主要有三种;X.25网、帧中继网和ATM网。前一种提供可靠交付,而后两种不提供可靠交付。