不同状态下的路由选择协议

Handsomefan 2010-06-09

在我们学习路由选择协议的时候,可以针对链路状态和矢量状态两个区分开来学习。这样也是比较形象的便于我们来记忆。现在针对这两方面我们来简单的介绍一下,那么重点还是对链路状态路由选择协议的相关内容的学习。

概述

如果把距离矢量路由选择协议比作是由路标提供的信息,那么链路状态路由选择协议就是一张交通线路图;因为它有一张完整的网络图,所以它是不容易被欺骗而作出错误的路由决策的;链路状态不同于距离矢量依照传闻进行路由选择的工作方式,每台路由器都会产生一些关于自己、本地直连链路以及这些链路的状态(以此而得名)和所有直接相连邻居的信息。这些信息从一台路由器传送到另一台路由器,每台路由器都做一份信息拷贝,但是决不改动这些信息,最终每台路由器都有一个相同的有关网络的信息,并且每台路由器可以独立地计算各自的最优路径;

链路状态协议,有时也叫最短路径优先协议或分布式数据库协议,是围绕着图论中的一个著名算法-E.W.Dijkstra的最短路径算法设计的;

链路状态协议有以下几种:

IP开放式最短路径优先OSPF;

CLNS或IPISO的中间系统到中间系统IS-IS;

DEC的DNA阶段5;

Novell的NetWare链路服务协议NLSP.

链路状态路由选择协议的基本步骤如下:

1、每台路由器与它的邻居之间建立联系,这种联系称为邻接关系;

2、每台路由器向每个邻居发送链路状态通告LSA。对每台路由器链路都会生成一个LSA,LSA用于标识这条链路、链路状态、路由器接口到链路的代价度量值以及链路所连接的所有邻居。每个邻居在收到通告后将依次向它的邻居转发(泛洪)这些通告;

3、每台路由器要在数据库中保存一份它所收到的LSA的备份,如果所有路由器工作正常,那么它们的链路状态数据库应该相同;

4、完整的拓扑数据库,也叫做链路状态数据库,Dijkstra算法使用它对网络图进行计算得出到每台路由器的最短路径;接着链路状态协议对链路状态数据库进行查询找到每台路由器所连接的子网,并把这些信息输入到路由表中.

邻居

邻居发现是建立链路状态环境并运转的第一步,它将使用Hello协议(HelloProtocol)。Hello协议定义了一个Hello数据包的格式和交换数据包并处理数据包信息的过程;Hello数据包至少应包含一个路由器IDCRID和发送数据包的网络地址。路由器ID可以将发送该数据包的路由器与其他路由器惟一地区分开,例如,路由器ID可以是路由器一个接口的IP地址。数据包的其他字段可以携带子网掩码、Hello间隔、线路类型描述符和帮助建立邻居关系的标记,其中Hello间隔是路由器在宣布邻居死亡之前等待的最大周期;

相关推荐