本节将讨论早期Internet核心结构,并分析这种结构的特点和存在的局限性。
早期Internet采用了以ARPANET为主干,以核心路由器(core router)构成的核心系统连接纽带的核心结构,如下图所示。核心系统由主干网和若干核心路由器构成。每个核心路由器直接与主干网连接。核心系统内部互相通信,以确保共享的路由信息一致。本地网络中的路由器称为非核心路由器(noncore router),它们由独立的群组控制。每个本地网络通过一个核心路由器与主干网相连。
在这种核心结构中,本地网络中的非核心路由器的路由表中包含有本地网络内部的路由信息,并将本地网络之外的路由以默认路由的形式指向将本地网络连接到核心系统的核心路由器。
当数据报经过非核心路由器时,如果目的地在本地网络之内,路由器通常可以从路由表中找到该数据报的下一站。如果数据报的目的地在本地网络之外,路由器一般通过默认路由方式,将这些数据报统一交给与本地网络连接的核心路由器,由核心路由器进行本地网络之外的路由。
对核心系统,如果核心路由器中也使用了默认路由机制,那么,为了保证全局一致性,默认路由链必须经过所有的核心路由器。这样,如果连接到主干网的核心路由器很多,则默认路由链就构成一个巨大的环。在这种结构下,跨越不同本地网络的传输可能是非常低效率的。从下面的动画可以看出这种情况。
为了避免默认路由造成的低效率,所有核心路由器不能采用默认路由,必须通过交换路由信息,使得每个核心路由器都包含所有目的站的最优路由的全部信息。于是,核心系统的结构和路由器情况如下图所示。其中核心系统的路由器不使用默认路由,而外围的每个路由器将默认路由指向核心系统中的某个路由器——将本地网络与核心系统连接的那一个核心路由器。
但是这种结构存在实现的难度。原因是:
■ Internet的主干网覆盖范围很广,拓扑结构复杂,要保证所有核心路由器的一致性相当困难;
■ 不是所有的网点都通过与核心路由器相连进入主干网,因此需要其他的路由结构和路由协议;
■ 由于所有核心路由器必须通过交换路由信息来确保一致性,因此核心结构不能太大,否则,系统开销非常大,路由信息无法保证一致。