OSPF-工作过程
2011-08-19 09:41:06    我来说两句    
收藏    我要投稿
1、状态机的变化过程:
(1) OSPF路由器接口up,发送Hello包,(NBMA模式时将进入Attempt状态)。
(2) OSPF路由器接口收到Hello包,检查Hello中携带的参数,如果匹配,进入Init状态;并将该Hello包的发送者的Router ID,添加到Hello包(自己将要从该接口发送出去的Hello包)的邻居列表中。
(3) OSPF路由器接口收到邻居列表中含有自己Router IDHello包,进入Two-way状态,形成OSPF邻居关系,并把该路由器的Router ID添加到自己的OSPF邻居表中。
(4) 在进入Two-way状态后,广播、非广播网络类型的链路,在DR选举等待时间内进行DR选举。点对点没有这个过程。
(5) DR选举完成或跳过DR选举后,建立OSPF邻接关系,进入exstart(准启动)状态;并通过交换DBD交换主从路由器,由主路由器定义DBD序列号,Router ID大的为主路由器。目的是为了解决DBD自身的可靠性。
(6) 主从路由器选举完成后,进入Exchange(交换)状态,通过交换携带lsa头部信息的DBD包描述各自的LSDB
(7) 进入Loading状态,对链路状态数据库和收到的DBDLSA头部进行比较,发现自己数据库中没有的LSA就发送LSR,向邻居请求该LSA;邻居收到LSR后,回应LSU;收到邻居发
来的LSU,存储这些LSA到自己的链路状态数据库,并发送LSAck确认。
(8) LSA交换完成后,进入FULL状态,同一个区域内所有OSPF路由器都拥有相同链路状态数据库。
(9) 定期发送Hello包,维护邻居关系。
2、协商过程:
本文出自 Esc结束 博客
OSPFreact router的优点协议之详细图解
2012-10-10 10:31:46    我来说两句       作者:xuzhiming302
收藏    我要投稿

OSPF是一种基于SPF算法的链路状态路由协议。

www.2cto 下面老马就将本协议的详细工作过程做一总结,希望对大家有所帮助……


  上图是在一个OSPF区域里面添入一台新的路由器的时候,OSPF协议的工作过程,如果你能非常详细的叙述出这张图的话,基本上OSPF协议的工作过程你就掌握了。下面老马的主
要工作就是分析这张图。

首先大家要清楚,一台运行了OSPF协议的路由器,最终都会存储三张表:邻居表、拓扑表、路由表。老马下面以这三张表的产生过程为线索,来分析在这个过程中,路由器发生了那些变化,从而说明OSPF协议的工作过程。
(一)邻居表的建立
一台新加入OSPF区域的路由器首先要跟邻居路由器建立邻接关系,过程如下:
www.2cto 

  1

2

3
通过上面3步,新加入的路由器和其邻居路由器已经建立了邻居关系。
(二)拓扑表的建立
www.2cto  在建立拓扑表的时候,新加入的路由器要经历预启动状态、交换状态、加载状态、完全邻接状态。下面老马就将此过程,以图的形式展示给大家:

  1

  2

3

经过以上四步,此OSPF区域的所有路由器的数据拓扑图都达到了同步。
(三) 然后每个路由器按照产生的全区域数据拓扑图,在运行SPF算法,产生到达目标网络的路由条目。
  经过以上三大步,OSPF协议的运行过程基本结束。
注意:在上面的过程当中有几个很重要的问题需要注意
1此协议的管理距离是110OSPF路由进程ID的范围必须在1-65535之间,而且只具有本地含义,不同路由器的路由进程ID可以不同、区域ID0-4294967295,当区域值取0时本区域称为主干区域。
www.2cto
2》确定router ID遵循如下顺序:
router ID 命令指定的路由器ID的优先级最高
如果没有指定,那么选IP地址最大的环回接口的IP地址为route ID
如果没有换回接口,就选择UP端口中IP值最大的为router ID
但还是建议使用命令指定,这样可控性比较好。
3DR选举的原则
首要因素是时间,最先启动的路由器被选举成为DR
如果同时启动,或者重新选举,则看接口优先级(0-255),优先级最高的被选举成DR,在默认情况下,多路访问网络的接口优先级为1,点到点网络的接口优先级为0,修改接口优先级的命令是ip ospf priority,如果接口的优先级被设置为0,那么该接口不参与DR选举。

如果前两者相同,最后看路由器ID,路由器ID最高的被选举成DR
  DR选举时非抢占的,除非人为地重新选举。重新选举DR的方法有两种,一是路由器重新启动;二是执行clear ip ospf process"命令
« [CCNA图文笔记十七]EIGRP协议详解[CCNA图文笔记十九]交换机基础 »[CCNA图文笔记十八]OSPF协议详解
发表于 2012 年 11 月 4 日 晴刃
这篇文章主要介绍链路状态路由协议OSPF的特征、术语、包类型、邻居关系的建立、RID的选择、DRBDR的选举、度量值的计算、默认路由、验证等。


___________________________________________
文章目录
[*1*].链路状态路由协议概述
工作过程
优缺点
[*2*].OSPF概述和基本配置
特性
术语
包格式
包类型
邻居关系的建立过程
基本配置实例
Router ID选举规则
DR和BDR选举规则
度量值计算方法
[*3*].OSPF高级配置
验证实例
默认路由实例
___________________________________________
[*1*].链路状态路由协议概述
链路状态路由协议使用Dijkstra算法,也称SPFShortest Path First,最短路径优先)算法。常见的链路状态路由协议有:OSPFv2OSPFv3IS-IS。这篇文章主要针对OSPFv2OSPFv3是面向IPv6的且不兼容IPv4
* 链路状态路由协议工作过程
1,每台路由器学习激活的直接相连的网络。
2每台路由器和直接相连的路由器互交,发送Hello报文,建立邻居关系。
3,每台路由器构建包含直接相连的链路状态的LSALink-State Advertisement,链路状态通告)。链路状态通告(LSA)中记录了所有相关的路由器,包括邻路由器的标识、链路类型、带宽等。
4每台路由器泛洪链路状态通告(LSA)给所有的邻路由器,并且自己也在本地储存邻路由发过来的LSA,然后再将收到的LSA泛洪给自己的所有邻居,直到在同一区域中的所有路由器收到了所有的LSA。每台路由器在本地数据库中保存所有收到的LSA副本,这个数据库被称作链路状态数据库(LSDBLink-State Database
5每台路由器基于本地的链路状态数据库(LSDB)”然后执行最短路径优先(SPF算法,
并以本路由器为根,生成一个SPF树,基于这个SPF树计算去往每个网络的最短路径,也就得到了最终的路由表。
下图演示了链路状态路由协议路由表的生成过程:
* 链路状态路由协议优缺点
优点: 运行链路状态路由协议的路由器通过LSA的交换,最后独立的计算出到每个网络的最
短路径,相对距离矢量路由具有更强的全局观念;收到邻居的LSA后立即泛洪,并且本路由再执行SPF算法,比距离矢量路由有更高的收敛速度(EIGRP除外,EIGRP是高级距离矢量路由协议有更快的收敛速度);当检测到拓扑发生变化时立即发送更新;多区域设计,可以将一些问题限制在较小的区域中。
缺点: 内存需求高,需要更强的CPU的支持,在网络初始化时,大量链路状态包泛洪,会影响网络的可用带宽。
[*2*].OSPF概述和基本配置
OSPFOpen Shortest Path First,开放最短路径优先)是一个被各厂商设备广泛支持的链路状态路由协议。
* OSPF特性
OSPF执行IETF标准,IETF标准被不同厂商的设备所支持;执行SPF算法,不会产生环路;支持VLSMCIDR;可以用于大型网络;层次型设计,易扩展;区域化设计,减小路由更新给设备带来的负担;快速收敛,使用触发式更新;支持针对区域和链路的验证。执行OSPF
的路由默认每隔30分钟会泛洪一次链路状态通告(LSA),称为链路状态刷新(并非周期性更新);当一条LSA被接收并被储存到链路状态数据库中后,路由器会给这条记录增加一个老化时间标识,默认是一小时,所以为了防止一些正常的LSA被清除,始发这条LSA的路由会每隔30分钟泛洪一次这条LSA的一个新拷贝。
* OSPF术语
链路(Link):当一个接口加入OSPF进程,就被当做是OSPF的一条链路。
链路状态(Link-State:包括接口的IP、子网、网络类型、链路花费、链路上的邻居等。
路由器IDRouter ID,简称RID:RID是一个用来标识路由器的IP地址,可以在OSPF路由进程中手工指定;如果没有指定,路由器默认选择回环接口中最高的IP作为RID;如果没有回环地址,路由器使用所有激活的物理接口中最高的IP作为RID
邻居(Neighbor:两台或多台路由连接在一个公共的网络上,如两台路由通过串行线路相连,多台路由通过以太网相连。
邻接(Adjacency:邻接是两台路由器之间的关系,OSPF只与建立了邻接关系的邻居共享路由信息。
区域(Area:OSPF通过划分区域来实现分层设计,跨越两个或两个以上区域的路由被称作ABRArea Border Router,区域边界路由)。所有的区域都和“Area 0”相连,“Area 0”被称作骨干区域,骨干区域路由器具有整个自制系统中所有路由条目,LSA的扩散仅限制在区域内,通过划分多个区域可以减小LSA扩散过程中对硬件的负担。
指定路由器(Designated Router,简称RD):OSPF链路被连接到多路访问的网络中时,需要选择一台指定路由器(DR),每台路由器都把拓扑变化发给DRBDR,然后由DR通知该多路访问网络中的其他路由器。
备用的指定路由器(Backup Designated Router,简称BDR):DR发生故障的时候,BDR转变成DR,接替DR个工作。
花费(Cost:OSPF中使用的唯一度量值,使用链路的带宽计算得来。
* OSPF包格式
OSPFEIGRP一样,也被设计成一个网络层协议,协议号89。包格式如下图:
各部分解释如下:
数据链路层头部: OSPF使用的组播IP地址是224.0.0.5(非DRBDR路由使用的地址)和224.0.0.6(DRBDR使用的组播地址)这两个组播地址对应的MAC地址分别为”01-00-5E-00-00-05″”01-00-5E-00-00-06″
包头部:协议号是89IP是发送路由的IP,目的IP是组播IP地址224.0.0.5224.0.0.6
OSPF头部:包括路由ID和所在的区域号、包的类型代码(5种类型的包代码)。
OSPF包对应的数据:每种包有每种包具体的内容。
* OSPF包类型