网络层的作用是向传送层(在此称为主机)提供网络服务,而网络服务是以接口(与主机的接口)形式向上层提供的。若在子网与主机的接口中采用虚电路模型,并且提供与虚电路模型相当的传输质量,则这时的网络服务就是虚电路服务。若在子网与主机的接口中采用数据报模型,则这时的网络服务就是数据报服务。服务的概念不同于内部的结构,它只是说明下层能为上层做什么,以什么样的形式去做和做到什么样的程度,而不说明内部是什么样的。
虚电路服务和数据报服务的主要差别不仅仅在于它们所采用的形式,也在于它们所能提供的服务。前者可以提供由子网完成的差错控制和顺序控制,而对后者,这两种控制需由主机完成。
虚电路服务的特点是主机不需要处理报文分组的顺序,因为各个分组一定是按顺序到达接收端的。但当某一用户并不在乎报文的顺序时,这样的处理就显得多余了。例如,某机器将一磁盘的内容逐段传送到另一机器的某一相同磁盘上时,由于每段磁盘信息都有对应该磁盘的位置的标识,这时各段是否按顺序到达就无关紧要了,最终总能放到对方磁盘的正确位置上。
对差错控制也是如此。在虚电路服务中,主机不必耽心出错,出错的重发过程由子网负责。但有些情况自动重发反而不好,例如,通过采用虚电路服务的网络传输数字化的声音。在实时演讲中,让听众听到一个有错的报文分组(一个词的某部分出错)比让听众等候几秒钟后再超时重发要好得多。但有时用户对差错控制要求很高,例如在银行系统中,若因为一个比特的错误将1元钱变为了4097元而未识别出来,则是绝不允许的。因此,在子网之上是否再叠加一层差错控制,取决于用户的应用要求。但过多层的差错控制肯定会影响效率。(www.xing528.com)
虚电路除了能提供自动的顺序控制和差错控制以外,还能提供流量控制。事实上,虚电路本身的流量就是受限制的。若用户希望很高的传输速率,而不希望受到虚电路对流量的限制(流控窗口限制和虚电路极限流量),则以选择数据报服务为宜,因为它可以利用整个子网的通过能力,而非某一条虚电路的通过能力。
从上述讨论可见,数据报服务的突出特点是灵活。有经验的用户可以利用数据报服务来设计自己的分组交换方法,这为处理复杂问题提供了很大的伸缩余地。对于多个子网互连的情况,这种灵活性将导致互连的简单性。另外,当数据报服务用于小批量、多批次的通信过程时,要比使用每次都需呼叫建立的虚电路方便得多。但多数应用,特别是大批量的传输过程还是以采用顺序无差错的、流量受控的传送途径为宜。若由子网来完成顺序控制、差错控制、流量控制,这些控制程序只需编一次,而若由主机来完成,则需分别编出对应不同主机的程序。另外,由通信子网处理更多的通信工作也是理所当然的。
综上所述,两种服务方式各有所长,也各有所短,子网究竟采用哪种服务方式,完全取决于应用和网络设计的需要。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。