当前位置:文档之家› 第4章 网络互联技术 41 网络互联基本概念 随着网络应用的普及,社会上

第4章 网络互联技术 41 网络互联基本概念 随着网络应用的普及,社会上

第4章 网络互联技术 41 网络互联基本概念 随着网络应用的普及,社会上
第4章 网络互联技术 41 网络互联基本概念 随着网络应用的普及,社会上

第4章网络互联技术

4.1 网络互联基本概念

随着网络应用的普及,社会上各个单位的内部网络为了各自的应用需要纷纷建立起来,如何让这些资源能够共享,单位内部的网络、单位之间的网络甚至城市与城市之间、国家与国家之间的网络都有连接的需要,于是就有了网络互联的技术产生,并迅速发展壮大,直到产生了如今连接范围覆盖全世界的互联网络,网络互联技术仍在不断更新提高。

4.1.1 网络互联的基本概念

网络互联就是将分布在不同地理位置、相同或不同类型的计算机网络连成一个网,进行高速数据通信,实现资源(包括硬件、数据和软件)共享和分布处理。

为了数据分组在不同的网络之间实现源到目标有效的传输,网络互联技术需要提供多方面的功能和服务。

首先,需要规定传输数据单元的类型和格式,这种协议数据单元称为分组(packet),和其他网络的协议数据单元类似,分组是网络互联议功能的集中体现,其中要包括实现网络互联所必需的控制信息如收发双方的网络地址等。

其次,要了解通信子网的拓扑结构,从而能进行最佳路径的选择,最佳路径选择又被称为路由(Routing);

第三,在选择路径时还要注意既不要使某些路径或通信线路处于超负载状态,也不能让另一些路径或通信线路处于空闲状态,即所谓的拥塞控制和负载平衡;当网络带宽或通信子网中的路由设备性能不足时都可能导致拥塞。

另外,当源主机和目标主机的网络不属于同一种类型时,网络层还要能协调好不同网络间的差异即所谓解决异构网络数据传输的问题。

根据OSI网络分层的定义,网络互联的功能与服务主要在网络层实现,网络层为上层的传输层提供分组传输服务还要做到:服务与通信子网技术无关,即通信子网的数量、拓扑结构及类型对于传输层是透明的;传输层所能获得的地址应采用统一的方式,以使其能跨越不同的LAN 和W AN。

OSI和TCP/IP的体系结构中,网络层设计的基本目标就是实现网络互联。

4.1.2 网络互联的层次

网络互联技术将源主机发出的分组经由各种网络路径到达目的主机,其中向下使用了数据链路层所提供的相邻节点之间的数据传输服务,向上为传输层提供了从源到目标的数据传输服务。

为网络互联定义的网络层是处理端到端(end to end)数据传输的最低层,同时又是通信子网的最高层。如图4.1 所示,资源子网中的主机具备了OSI 模型中所有七层的功能,但通信子网中的主机因为只涉及通信问题而只拥有OSI 模型的下三层。所以网络层被看成是通信子网与资源子网的接口,即通信子网的边界。

图4.1网络互联的层次结构

网间互联的复杂性取决于要互联的网的帧、分组、报文和协议的差异程度。

一般局域网间互联由于在传输层以下,大多采用中继器和桥。网桥工作在数据链路层,透明网桥用于同种类型的LAN的互联,改变封装的网桥有能力改变每种通信协议所规定的数据包的封装。交换式集线器工作在数据链路层,有些具有路由功能的三层交换机工作在网络层,它们除普通集线器的功能外,还能以高的数据速率实现不同类型的局域网互联。

广域网间的互联主要是扩大数据通信网的连通范围,由于协议差异很大,一般采用路由器,工作在网络层,并且可以利用公共传输系统联网。

在广域网内,这些结点交换机和它们之间的链路一般由电信部门提供,网络由多个部门或多个国家联合组建而成,并且网络的规模很大,能实现整个网络范围内的资源共享。另外,从体系结构上看,局域网与广域网的差别也很大,局域网的体系结构其主要层次有物理层和数据链路层两层,而广域网目前主要采用是TCP/IP体系结构,所以它的主要层次是主机网络层、互联层、运输层和应用层,其中网络层的路由选择问题是广域网首先要解决的问题。在现实世界中,广域网往往由许多种不同类型的网络互连而成。

4.1.3 网络互联的分类

根据互相联接的网络之间类型,网络互联可以分为同类型网络相连和异类型网络相连。

根据互相联接的网络之间距离的远近,可分为局域网间互联(LAN-LAN)、局域与广域网相连(LAN-WAN N)和广域网间互联(WAN-WAN)。

根据通信传输方式来分,网络层提供给传输层的服务有面向连接和面向无连接两种形式。

简单地说,所谓面向连接就是指在数据传输之前双方需要为此建立一种连接,然后在该连接上实现有次序的分组传输,直到数据传送完毕连接才被释放;面向无连接则不需要为数据传输事先建立连接,其只提供简单的源和目标之间的数据发送与接收功能。

此外,网络互联不同的实现方式还取决于通信子网的内部结构,面向无连接的服务在通信子网内通常以数据报(datagram)方式实现。在数据报服务中,每个分组都必须提供关于源和目标的完整地址信息,通信子网根据地址信息为每一个分组独立进行路径选择。

面向连接的服务则通常采用虚电路(virtual circuit,简称VC)方式实现。虚电路是指通信

子网为实现面向连接服务而在源与目标之间所建立的逻辑通信链路。虚电路服务的实现涉及三个阶段,即虚电路建立、数据传输和虚电路拆除三个阶段。

4.2 网络互联解决方案

面向连接的网络服务(虚电路)和无连接的网络服务(数据报)是网络互联技术中两种不同的实现方式和技术发展方向。

虚电路服务的思路来源于传统的电信网,电信网将其用户终端(电话机)做得非常简单,而电信网负责保证可靠通信的一切措施,因此电信网的节点交换机复杂而昂贵。

数据报服务力求使网络在恶劣的环境下仍可工作,并使对网络的控制功能分散,因而只能要求提供尽最大努力的服务,这种网络要求使用较复杂且有相当智力的计算机作为用户终端,可靠通信由用户终端中的软件(即TCP)来保证。

OSI网络七层定义中的网络层倾向于面向连接的网络服务,而TCP/IP网络结构中的网络层(IP层)则采用无连接的网络服务。

4.2.1 面向连接的解决方案

面向连接的解决方案的特点是:一经建立连接就要赋予虚电路号,它反映信息的传输通道,这样在传输信息报文分组时,就不必再注明源站和目的站的全部地址,相应地缩短了信息量,所以采用虚电路服务就必须有连接建立、数据传输和连接释放这三个阶段。

它不会发生报文丢失或重复的情况。虚电路服务在双方进行通信之前,必须首先由源站发出一个请求的报文分组(在该报文分组中要有源站和目的站的全部地址),请求与目的站建立连接,当目的站接受这个请求后,也发出一个报文分组作为应答,这样双方就建立起来数据通路,然后双方可以传送信息,当双方通信完成之后需要拆除这个建立的连接。

4.2 面向连接的网络服务

面向连接的解决方案有以下优点:

1、面向连接服务可以迅速建立路由。在呼叫建立阶段,就可以开始查看复杂的地址,然后为呼叫指定一个小的标识符。当路由器在转发包时,就可以根据这个小的标识符来查看简单的路由表,从而迅速做出决定。

2、当网络接受一个呼叫时,它就应该义不容辞地提供一个合理的带宽。拒绝新的呼叫请求的策略,会比降低目前正在进行的呼叫的服务质量要好得多。

3、面向连接的网络中,运输层处理统一的服务会更容易。例如,如果网络独立地为每一个包计算路由(在无连接的网络中经常如此),运输层很难计算到目的端的来回时延(round-trip delay)(这一点很重要,当发送端没有收到目的端的确认信息时,需要根据这个延迟时间来判断是否需要重发包)。另外一个例子是包大小。我们很可能需要发送一个巨大的包,但是不同的链路类型提供了不同的最大包长。路由器能够传输的最大包长等于沿着这个路由器的所有链路中最大包长的最小值。在无连接网络中,包可能被具有不同最大包长要求的路由器转发。而在大多数面向连接的网络中,所有的包都只经过一条路径,因此端节点可以知道该路径中的最大包长信息。

4、面向连接的网络层的接口要比无连接的网络层的接口简单,因为面向连接的网络层不需要复杂的运输层。

5、看起来面向连接的网络似乎不如无连接的网络可靠,因为如果这条路径出了故障,整个连接都失败了。但是,在大多数的数据报网络中,路由协议需要花掉足够多的时间来检测出某条链路的故障,并计算出一条新的路径来替代它,以至于传输连接早已结束而中断。

4.2.2 面向非连接的解决方案

无连接的数据报服务的特点是:某一主机想要发送数据就随时可以发送,每个报文分组独立地选择路由,这样做的好处是报文分组所经过的结点交换机不需要事先为该报文分组预先保留一些资源,而是对分组在进行传输时动态地分配给其资源。由于每个报文分组走不同的路径,所以数据报服务不能保证先发送出去的报文分组先到达目的主机,也就是说这种数据报服务的报文分组不能按序交给目的主机,因此目的站就必须对收到的报文分组进行缓冲,并且重新组装成报文再传送给目的主机。在无连接业务中,不要求对数据传输先建立端到端的连接。因而不存在预先确定的数据通过网络必须走的通路。这样在某些无连接业务中,数据可能以从源点发送不同的次序到达目的地。

4.2 面向非连接的网络服务

关于网络层应当采用数据报服务还是虚电路服务,在网络界一直在进行争论,焦点是网络要不要提供网络端到端的可靠服务。

OSI在网络层采用了虚电路服务,Internet在网络层采用了数据报服务。Internet能够发展到今天这样的规模,充分说明了在网络层提供数据报服务是非常成功的。

面向非连接的解决方案有如下优点:

1、在面向连接的网络中,如果某个呼叫所在路径中发生了故障,网络就会自动地中断呼叫。它不能判断哪些包已经达到了目的端,哪些包尚未到达;并且它不能恢复在发生故障的时刻,正处于发送途中的那些包。因此,即便网络层宣称它可以提供可靠服务,该网络的运输层也需要做到全服务。也就是说,面向连接的网络实际上提供了双重的努力。

2、无连接的网络层的接口要比面向连接的网络层的接口简单,即便需要充分地考虑运输层。但如果第一条是正确的(即不管怎么说都需要一个全服务的运输层),则端节点在面向连接的网络中,其网络层编码会比端节点在无连接的网络中的网络层编码简单得多。

3、很多应用条件都不需要按顺序发送包。对这些应用来说,包丢失是可以忍受的。其中一个例子是语音包,一定百分比的语音包丢失是可以容忍的,但是延迟到达的语音包将毫无意义,可以直接抛弃。而面向连接的网络中,经常延迟发送一个包,因为它需要等前面丢失的包重发完成以后才能发送下一个包。包无须按序到达的另外一个例子是文件传输。每个包都包含了足够多的信息,当这些包到达目的端时,可以立刻按正确顺序排列,然后存放在磁盘上。当一个文件传输完成时,应用程序可以检查到哪个文件块丢失了,然后直接请求重发该文件块。让这些包按顺序到达目的端毫无必要。在D i g i t a l公司所做工作的基础上,已经制定了这样的协议8 0 2 . 1 e(组播负载协议,multicast load protocol)。

4、网络传输经常会超载,因此保留资源是一种浪费。如果某个应用程序试图发送数据,

然后又停了一段时间,接着再发送一些数据,当这个端节点没有发送数据时,网络为它所预留的那些带宽就被浪费掉了。很多事情看起来好像不会导致超载的,可实际上,它们确实会让网络超载。比如说文件传输。一般说来,文件传输是不会让网络超载的,但是当发送繁忙时,就可能引起超载。或者,网络的带宽确实比较大,但是在某个时刻,文件的传输高峰就可能会超出带宽的范围。同样,在视频和音频的传输过程中,也可能出现同样的问题。假定在大多数情况下,网络都是超载的,因此最好能够优化资源分配,并且允许网络资源共享(这跟飞机票超额预订的情况有些类似)。如果在同一时刻有多个用户请求资源,数据就会被丢失。但是对允许丢失的服务要求来说,这并不是致命的错误,因为可以通过运输层协议来请求重发被丢失的包。

5、让该网络上的所有用户公平地降低服务质量,要比让某个幸运的家伙独享网络服务而拒绝其他用户使用的做法好得多。

6、对大多数的应用来说,特别是在客户端-服务器端的请求-响应模式的应用中,很难做到在服务器端维持状态(或者在为服务器端提供服务的路由器上维持状态),并且监视目前所有的会话,因为一个服务器端可能连接有成百上千个客户端。

表4.1面向连接的解决方案和面向非连接的解决方案比较

相关主题
文本预览
相关文档 最新文档