OSPF(Open Shortest Path First)是一个内部网关协议(Interior Gateway Protocol,简称IGP),用于在单一自治系统(autonomous system,AS)内决策路由。与RIP相对,OSPF是链路状态路由协议,而RIP是距离向量路由协议。
链路是路由器接口的另一种说法,因此OSPF也称为接口状态路由协议。OSPF通过路由器之间通告网络接口的状态来建立链路状态数据库,生成最短路径树,每个OSPF路由器使用这些最短路径构造路由表。
开放最短路径协议(OSPF)协议不仅能计算两个网络结点之间的最短路径,而且能计算通信费用。可根据网络用户的要求来平衡费用和性能,以选择相应的路由。在一个自治系统内可划分出若干个区域,每个区域根据自己的拓扑结构计算最短路径,这减少了OSPF路由实现的工作量;OSPF属动态的自适应协议,对于网络的拓扑结构变化可以迅速地做出反应,进行相应调整,提供短的收敛期,使路由表尽快稳定化。每个路由器都维护一个相同的、完整的全网链路状态数据库。这个数据库很庞大,寻径时, 该路由器以自己为根,构造最短路径树,然后再根据最短路径构造路由表。路由器彼此交换,并保存整个网络的链路信息,从而掌握全网的拓扑结构,并独立计算路由。
OSPF(Open Shortest Path First开放式最短路径优先)是一个内部网关协议(Interior Gateway Protocol,简称IGP),用于在单一自治系统(autonomous system,AS)内决策路由。与RIP相对,OSPF是链路状态路由协议,而RIP是距离向量路由协议。 OSPF起源 I E T F—为了满足建造越来越大基于I P网络的需要,形成了一个工作组,专门用于开发 开放式的、链路-状态路由协议,以便用在大型、异构的I P网络中。新的路由协议以已经取得 一些成功的一系列私人的、和生产商相关的、最短路径优先( S P F )路由协议为基础, S P F在市 场上广泛使用。包括O S P F在内,所有的S P F路由协议基于一个数学算法—D i j k s t r a算法。这 个算法能使路由选择基于链路-状态,而不是距离向量。 O S P F由I E T F在2 0世纪8 0年代末期开发,O S P F是S P F类路由协议中的开放式版本。最初的 O S P F规范体现在RFC 11 3 1中。这个第1版( O S P F版本1 )很快被进行了重大改进的版本所代替, 这个新版本体现在RFC 1247文档中。RFC 1247 OSPF称为O S P F版本2是为了明确指出其在稳 定性和功能性方面的实质性改进。这个O S P F版本有许多更新文档,每一个更新都是对开放标 准的精心改进。接下来的一些规范出现在RFC 1583、2 1 7 8和2 3 2 8中。 O S P F版本2的最新版体现在RFC 2328中。最新版只会和由RFC 2138、1 5 8 3和1 2 4 7所规范 的版本进行互操作。 链路是路由器接口的另一种说法,因此OSPF也称为接口状态路由协议。OSPF通过路由器之间通告网络接口的状态来建立链路状态数据库,生成最短路径树,每个OSPF路由器使用这些最短路径构造路由表。 OSPF路由协议是一种典型的链路状态(Link-state)的路由协议,一般用于同一个路由域内。在这里,路由域是指一个自治系统(Autonomous System),即AS,它是指一组通过统一的路由政策或路由协议互相交换路由信息的网络。在这个AS中,所有的OSPF路由器都维护一个相同的描述这个AS结构的数据库,该数据库中存放的是路由域中相应链路的状态信息,OSPF路由器正是通过这个数据库计算出其OSPF路由表的。 作为一种链路状态的路由协议,OSPF将链路状态广播数据包LSA(Link State Advertisement)传送给在某一区域内的所有路由器,这一点与距离矢量路由协议不同。运行距离矢量路由协议的路由器是将部分或全部的路由表传递给与其相邻的路由器。 OSPF包头 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | version | type | packet length | +---------------+---------------+-------------------------------+ | router ID | +---------------------------------------------------------------+ | area ID | +-------------------------------+-------------------------------+ | checksum | authentication type | +-------------------------------+-------------------------------+ | authentication | +---------------------------------------------------------------+ | authentication | +---------------------------------------------------------------+
配置引入外部路由时缺省的花费值,no default redistribute cost命令取消配置。
default redistribute cost cost
no default redistribute cost
【参数说明】 cost为花费值,范围1~65535之间的整数。
【命令模式】 OSPF协议配置模式
【使用指南】
在OSPF将路由器上其它路由协议发现的路由引入作为自己的自治系统外部路由信息时,还需要一些额外的参数,包括:路由的缺省花费和缺省的标记等。
【举例】 配置OSPF引入外部路由时缺省的花费值为10。
Quidway(config-router-ospf)#default redistribute cost 10
【相关命令】
default redistribute tag
default redistribute type
2. default redistribute interv
配置OSPF引入外部路由的时间间隔,no default redistribute interval命令恢复缺省值。
default redistribute interval time
no default redistribute interval
【参数说明】 time为引入外部路由的时间间隔,以秒为单位,范围1~65535之间的整数。
【缺省情况】 OSPF引入外部路由的时间间隔缺省为1秒。
【命令模式】 OSPF协议配置模式
【使用指南】
由于OSPF总是要不停的引入外部的路由信息并将它们传播到整个自治系统中去,因此,有必要规定协议引入外部路由的时间间隔。
【举例】
指定OSPF引入外部路由的时间间隔为2秒。
Quidway(config-router-ospf)#default redistribute interval 2
【相关命令】 default istribute limit
3. default redistribute limit
配置OSPF可引入路由数量的上限,no default redistribute limit命令恢复缺省值。
default redistribute limit routes
no default redistribute limit
【参数说明】 routes为引入路由数量的上限值,范围1~65535之间的整数。
【缺省情况】 OSPF引入外部路由数量的上限缺省为150。
【命令模式】 OSPF协议配置模式
【使用指南】
由于OSPF总是要不停的引入外部的路由信息并将它们传播到整个自治系统中去,因此,有必要规定在一次传播中外部路由信息的最大条数。
【举例】 指定OSPF引入外部路由数量的上限为200。
Quidway(config-router-ospf)#default redistribute limit 200
【相关命令】
default redistribute interval
4. default redistribute tag
default redistribute tag [ as ] tag
no default redistribute tag
【参数说明】as表示为自治系统标号。 tag为标记值。
【命令模式】 OSPF协议配置模式
【使用指南】
在OSPF将路由器上其它路由协议发现的路由引入作为自己的自治系统外部路由信息时,还需要一些额外的参数,包括:路由的缺省花费和缺省的标记等。 路由标记可以用来标识协议相关的信息,如OSPF引入EGP/BGP协议时用来区分自治系统的编号。
【举例】
设置OSPF引入自治系统外部路由的缺省标记为10。
Quidway(config-router-ospf)#default redistribute tag 10
【相关命令】
default redistribute cost
default redistribute type
5. default redistribute type
default redistribute type { 1 | 2 }
no default redistribute type
【参数说明】1 和 2 分别表示第一类外部路由和第二类外部路由。
【缺省情况】没有配置引入外部路由时缺省类型时,默认为第二类外部路由。
【命令模式】 OSPF协议配置模式
【使用指南】
OSPF在协议中规定了两类外部路由信息的花费选择方式,可以用本节所述命令规定缺省的花费类型。
【举例】
指定OSPF引入外部路由时缺省类型为第一类路由。
Quidway(config-router-ospf)#default redistribute type 1
【相关命令】
default redistribute cost
default redistribute tag
21.routerid
OSPF 使用三种不同的管辖距离:域内、域间和外部的。在一个区域内部的路由是域内的;到另一个区域的路由是域间的;而来自于另一个通过重分配而获得的路由选择域的路由被称为外部的。每种类型路由的缺省距离都是110。
distance ospf {[intra-area dist1][inter-area dist2] [external dist3]} 修改OSPF 距离值。