二、广域网互连
(1)广域网的互连一般采用在网络层进行协议转换的办法实现 。这里使用的互连设备叫作网关,更确切地说,是路由器。
(2)ISO 标准化了的两种网络互连方法,即面向连接的互连方式和无连接的互连方式。
1.OSI 网络层内部结构
(1)为了实现类型不同的子网互连,OSI 把网络层划分为3个子层。
- 子网访问子层:对应于实际网络的第三层,它可能符合也可能不符合 OSI 的网络层标准。如果两个实际网络的子网访问子层不同,则它们不能简单地互连。
- 子网相关子层:增强实际网络的服务,使其接近于OS1的网络层服务,两个不同类型的子网经过分别增强后可达到相同的服务水准。
- 子网无关子层:提供标准的 OSI 网络服务,它利用子网相关于层提供的功能,按照 OSI 网络层协议实现两个子网间的互连。
(2)网络层的3个子层结构对应于网络互连的3种策略。
- 第一种策略建立在子网支持所有 OSI 网络服务的假设上,这样的子网不需增强,在网络层可直接相连,并提供需要的网络服务。
- 第二种策略是分别增强实际网络的功能,以便提供同样的网络服务,这种互连方法如图所示:
该图中的中间系统在左边连接子网 A,两个子层分别运行子网访问协议(SNACP)A 和子网相关的汇聚协议(SNDCP)A。SNACP A 是与实际子网 A 相联系的协议,SNDCP A 是对子网A的增强协议。
中间系统右边连接子网B,SNACP B和SNDCP B与左边的对应协议类似。经过不同的增强后,子网 A 和 B 都提供相同的 OSI 网络层服务,中间系统提供路由选择和中继功能。这种互连方法对应于面向连接的网际互连。
- 第三种互连策略是采用统一的因特网协议,这种互连方法如图所示:
该图中的子网无关的会聚协议(SNICP)就是一种网际协议,它对每一个子网的要求最小,因而可能覆盖了两边子网的部分功能。这虽然有些浪费,但不失为一种解决问题的办法。通常,SNICP采用无连接的网络协议。
2.面向连接的网际互连
实现面向连接的网际互连的前提是子网提供面向连接的服务,这样可以用路由器连接两个或多个子网,路由器是每个子网中的 DTE 。当不同子网中的 DTE 要进行通信时,就通过路由器建立一条跨网络的虚电路。这种网际虚电路是通过路由器把两个子网中的虚电路级连起来实现的。
下图为用路由器连接一个X.25分组交换网和一个局域网的例子。
(1)网际虚电路
假设上图中的主机 A 希望与主机 B 建立逻辑连接。当主机A的传输层(TP)发出建立虚电路的请求时,把B的网络地址(网络·主机)传递给网络层。在A的网络层发出的 Call Request 分组中,这个网络地址被放在特别业务字段中,叫作被呼方扩展地址。在分组头的被呼方地址字段中包含的是路由器与分组交换网的子网连接地址。这样,利用 Call Request 分组头中的信息,X.25 协议可以建立一条从主机 A 到路由器的逻辑连接。
当路由器收到主机 A 的呼入请求(Incoming Call)分组时,路由器并不能立即决定是否接受这个请求,它必须根据特别业务字段中的被呼方扩展地址把连接请求传递给局域网中的主机B。路由器自动构造一个新的 Call Request 分组,这个分组的被呼方地址字段包含着主机 B 的子网连接地址。假如主机 B 接受了路由器发出的连接请求,路由器才可以向主机 A 发回呼叫接收分组,于是两个网络之间分别建立了一条网际虚电路。
(2)数据传输
当网际虚电路建立后,路由器就完成了两个虚电路号之间的映像功能,并把从 X.25 网络来的数据分组转发到局域网中对应的虚电路上去,或者进行相反方向的转发。
路由器可能还要完成分段和重装配功能。如果互连的两个子网的最大分组长度不同,路由器可以把大的分组划分成完备分组序列,使其可通过最大分组长度较小的子网,也可以把完备分组序列重装配成大的分组,以便在分组长度较大的子网上提高传输效率。
(3)X.75 网关
上图中的路由器也叫 X.25 网关,它执行 X.25 协议,从而实现两个子网的互连。这种网关(或路由器)可以安装在任何一个子网中,由两个网络的所有者共同管理。
在广域网互连时,共同营运一个网关可能在管理策略或经济利益方面无法协调。那么可以把网关一分为二,形成两个半网关。半网关作为它所属的子网中的 DTE ,两个半网关之间执行 X.75 协议,如图所示。
- 图中半网关 G 在其所属的子网中起着 X.25 主机的作用,左边的G1对应于路由器的左半边,而 G2对应路由器的右半边。
- G1和G2之间按 X.75 协议相互作用,而不是像路由器那样仅仅实现分组的转发和地址变换功能。
3.无连接的网际互连
(1)因特网协议(IP)是为ARPAnet研制的网际数据报协议,后来ISO以此为蓝本开发了无连接的网络协议(CLNP)。IP与CLNP 的功能十分相似,差别只在于个别细节和分组格式不同。
(2)一些网络经过网关互相连接的情况类似于分组交换网内部的组织,下图是分组交换网和因特网对比的例子。
因特网中的网关G1、G2和G3分别对应于分组交换网中的交换节点 S1、S2和 S3,而因特网中的子网 N1、N2和 N3 分别对应于分组交换网中的传输链路 T1、T2 和 T3。网关起到了分组交换的作用,通过与它相连的网络把分组从源端 H1传送到目标端H2,或者相反。
(3)网际协议要解决的问题与网络层协议是类似的。在网际层提供路由信息的手段仍然是路由表。每个站或路由器中都有一个网际路由表,表的每一行说明与一个目标站对应的路由器地址。网际地址通常采用"网络·主机"的形式,其中,网络部分是子网的地址编码,主机部分是子网中主机的地址编码。
(4)路由表可以是静态的或动态的。静态路由表也提供可选择的第二、第三最佳路由。动态路由表在应付网络的失效和拥挤方面更灵活。在国际因特网中,当一个路由器关机时,与该路由器相邻的路由器和主机都发出状态报告,使别的路由器或主机修改它们的路由表。对拥挤路段也可以同样处理。在因特网环境下,各个子网(可能是远程网或局域网)的容量差别很大,更容易发生拥挤,因而更要发挥动态路由的优势。
(5)更复杂的路由表还可支持安全和优先服务。
(6)选择路由的另外一种技术是源路由法,即源端在数据报中列出要经过的一系列路由器。这种方法也可以提供安全服务。
(7)路由记录服务是一种与路由选择有关的特殊服务。数据报经过的每一个路由器都把自己的地址加入其中,这样,目标端就可以知道该数据报的旅行轨迹。在进行网络测试或查错时这个服务很有用。