关于路由的基础知识( 三 )


(3)平坦与分层
一些路由协议在平坦的空间里运作,其它的则有路由的层次 。在平坦的路由系统中,每个路由器与其它所有路由器是对等的;在分层次的路由系统中,一些路由器构成了路由主干,数据从非主干路由器流向主干路由器,然后在主干上传输直到它们到达目标所在区域,在这里,它们从最后的主干路由器通过一个或多个非主干路由器到达终点 。
路由系统通常设计有逻辑节点组,称为域、自治系统或区间 。在分层的系统中,一些路由器可以与其它域中的路由器通信,其它的则只能与域内的路由器通信 。在很大的网络中,可能还存在其它级别,最高级的路由器构成了路由主干 。
分层路由的主要优点是它模拟了多数公司的结构,从而能很好地支持其通信 。多数的网络通信发生在小组中(域) 。因为域内路由器只需要知道本域内的其它路由器,它们的路由算法可以简化,根据所使用的路由算法,路由更新的通信量可以相应地减少 。
(4)主机智能与路由器智能
一些路由算法假定源结点来决定整个路径,这通常称为源路由 。在源路由系统中,路由器只作为存贮转发设备,无意识地把分组发向下一跳 。其它路由算法假定主机对路径一无所知,在这些算法中,路由器基于自己的计算决定通过网络的路径 。前一种系统中,主机具有决定路由的智能,后者则为路由器具有此能力 。
主机智能和路由器智能的折衷实际是最佳路由与额外开销的平衡 。主机智能系统通常能选择更佳的路径,因为它们在发送数据前探索了所有可能的路径,然后基于特定系统对“优化”的定义来选择最佳路径 。然而确定所有路径的行为通常需要很多的探索通信量和很长的时间 。
(5)域内与域间
一些路由算法只在域内工作,其它的则既在域内也在域间工作 。这两种算法的本质是不同的 。其遵循的理由是优化的域内路由算法没有必要也成为优化的域间路由算法 。
(6)链接状态与距离向量
链接状态算法(也叫做短路径优先算法)把路由信息散布到网络的每个节点,不过每个路由器只发送路由表中描述其自己链接状态的部分 。距离向量算法(也叫做Bellman-Ford算法)中每个路由器发送路由表的全部或部分,但只发给其邻居 。也就是说,链接状态算法到处发送较少的更新信息,而距离向量算法只向相邻的路由器发送较多的更新信息 。
由于链接状态算法聚合得较快,它们相对于距离算法产生路由环的倾向较小 。在另一方面,链接状态算法需要更多的CPU和内存资源,因此链接状态算法的实现和支持较昂贵 。虽然有差异,这两种算法类型在多数环境中都可以工作得很好 。
3、路由的metric
路由表中含有由交换软件用以选择最佳路径的信息 。但是路由表是怎样建立的呢?它们包含信息的本质是什么?路由算法怎样根据这些信息决定哪条路径更好呢?
路由算法使用了许多不同的metric以确定最佳路径 。复杂的路由算法可以基于多个metric选择路由,并把它们结合成一个复合的metric 。常用的metric如下:
路径长度
可靠性
延迟
带宽
负载
通信代价
路径长度是最常用的路由metric 。一些路由协议答应网管给每个网络链接人工赋以代价值,这种情况下,路由长度是所经过各个链接的代价总和 。其它路由协议定义了跳数,即分组在从源到目的的路途中必须经过的网络产品,如路由器的个数 。
可靠性,在路由算法中指网络链接的可依靠性(通常以位误率描述),有些网络链接可能比其它的失效更多,网路失效后,一些网络链接可能比其它的更易或更快修复 。任何可靠性因素都可以在给可靠率赋值时计算在内,通常是由网管给网络链接赋以metric值 。

推荐阅读