《08-OSPF路由协议》由会员分享,可在线阅读,更多相关《08-OSPF路由协议(28页珍藏版)》请在金锄头文库上搜索。
1、OSPF路由协议路由协议08080808学习目标 通过本章的学习,希望您能够:通过本章的学习,希望您能够: 掌握掌握OSPFOSPF路由协议的工作原理路由协议的工作原理 掌握掌握SPFSPF算法算法 掌握单区域掌握单区域OSPFOSPF配置方法配置方法本章内容 OSPFOSPF概念概念 SPFSPF算法算法 单区域单区域OSPFOSPF配置方法配置方法课程议题OSPFOSPF概念概念概念概念OSPF概念OSPF优势 将将OSPFOSPF路由协议与距离矢量路由协议路由协议与距离矢量路由协议RIPRIP作一比较,归纳作一比较,归纳为如下几点:为如下几点: 度量值度量值 VLSMVLSM支持支持 收
2、敛速度收敛速度 区域边界区域边界 路由自环路由自环 验证支持验证支持 负载平衡负载平衡 路由更新方式路由更新方式课程议题SPFSPF算法算法算法算法SPF工作过程 SPFSPF算法:算法: 是是OSPFOSPF路由协议的基础。路由协议的基础。SPFSPF算法有时也被称为算法有时也被称为DijkstraDijkstra算法,算法, SPFSPF算法将每一个路由器作为根(算法将每一个路由器作为根(ROOTROOT)来计算其到每一个目的地路由)来计算其到每一个目的地路由器的距离,每一个路由器根据一个统一的数据库会计算出路由域的拓扑结器的距离,每一个路由器根据一个统一的数据库会计算出路由域的拓扑结构图
3、,该结构图类似于一棵树,在构图,该结构图类似于一棵树,在SPFSPF算法中,被称为最短路径树算法中,被称为最短路径树选举DR/BDR 每一台路由器和他的邻居每一台路由器和他的邻居之间成为完全网状的之间成为完全网状的OSPFOSPF邻接关系,这样邻接关系,这样5 5台台路由器之间将需要形成路由器之间将需要形成1010个邻接关系,同时将产生个邻接关系,同时将产生2525条条LSALSA。 在多址的网络中,存在自在多址的网络中,存在自己发出的己发出的LSALSA从邻居的邻从邻居的邻居发回来,导致网络上产居发回来,导致网络上产生很多生很多LSALSA的拷贝,的拷贝,DR和BDR选取规则 选举规则选举规
4、则 : 优先级高的为优先级高的为DRDR,次高的为,次高的为BDRBDR,. .默认优先级都为默认优先级都为1 1。在优先级相同的。在优先级相同的情况下就比较情况下就比较RIDRID,RIDRID等级最高的为等级最高的为DRDR,次高的为,次高的为BDRBDR。 路由器的每个多路访问接口都有个路由器优先级,路由器的每个多路访问接口都有个路由器优先级,8 8位长的一个整数,范位长的一个整数,范围是围是0 0到到255255。 HelloHello包里包含了优先级的字段,还包括了可能成为包里包含了优先级的字段,还包括了可能成为DR/BDRDR/BDR的相关接口地的相关接口地址。址。 当接口在多路访
5、问网络初次启动的时候,它把当接口在多路访问网络初次启动的时候,它把DR/BDRDR/BDR地址设置为地址设置为0.0.0.00.0.0.0,同时设置等待计时器的值等于路由器无效时间间隔。,同时设置等待计时器的值等于路由器无效时间间隔。DR和BDR选举过程 选举过程:选举过程: 在和邻居建立双向通讯之后,检查邻居的在和邻居建立双向通讯之后,检查邻居的HelloHello包中的优先级,包中的优先级,DRDR和和BDRBDR字段。字段。 从这个有参与选举从这个有参与选举DR/BDRDR/BDR的列表中,创建一组没有声明自己就是的列表中,创建一组没有声明自己就是DRDR的的路由器的子集路由器的子集 只
6、要在只要在HelloHello包中包中BDRBDR字段就等于自己的接口的地址,优先级最高的就被字段就等于自己的接口的地址,优先级最高的就被选举为选举为BDRBDR,如果优先级一样,如果优先级一样,RIDRID最高的被选举为最高的被选举为BDRBDR。 如果在如果在HelloHello包中包中DRDR字段等于自己地址,优先级最高的被选举为字段等于自己地址,优先级最高的被选举为DRDR,如果,如果优先级相等,优先级相等,RIDRID最高的选举为最高的选举为DRDR,如果没有路由器宣称自己是,如果没有路由器宣称自己是DRDR,那,那么选举的么选举的BDRBDR就成为就成为DRDR。邻居和邻接关系 在
7、邻居关系中,在邻居关系中,OSPF HelloOSPF Hello报文中以下项内容必须相同,报文中以下项内容必须相同,Hello/Dead intervalsHello/Dead intervals、区域、区域IDID、认证相同、认证相同、stubstub区域标识区域标识相同,相同, 对于点到点的对于点到点的WANWAN串行连接,两个串行连接,两个OSPFOSPF路由器通常使用路由器通常使用HDLCHDLC或或PPPPPP来形成完全邻接状态。来形成完全邻接状态。 对于对于LANLAN连接,所有其他的和连接,所有其他的和DRDR以及以及BDRBDR相连的路由器相连的路由器形成完全邻接状态形成完全
8、邻接状态链路状态协议数据单元 LSALSA也被称为链路状态协议数据单元(也被称为链路状态协议数据单元(PDUPDU),),LSALSA具有具有以下特征以下特征 LSALSA是可靠的,有一种用于确认是可靠的,有一种用于确认LSALSA被成功传递的方法。被成功传递的方法。 LSALSA被扩散到整个区域。被扩散到整个区域。 LSALSA有序列号和寿命,以确保每台路由器都知道自己有最新的有序列号和寿命,以确保每台路由器都知道自己有最新的LSALSA版本。版本。 LSALSA被定期刷新以确保拓扑信息的有效性,直到被定期刷新以确保拓扑信息的有效性,直到LSALSA从从LSDBLSDB中被删除。中被删除。
9、只有可靠的方式扩散链路状态信息,才能确保区域中每台路由器对网络的只有可靠的方式扩散链路状态信息,才能确保区域中每台路由器对网络的认识都是最新、最准确的。认识都是最新、最准确的。OSPF报文类型 OSPFOSPF报文是由多重封装构成的,封装在报文是由多重封装构成的,封装在IPIP头部内的是头部内的是5 5种种OSPFOSPF报文类型中的一种,每一种报文类型都是由一个报文类型中的一种,每一种报文类型都是由一个OSPFOSPF报文头部开始,这个报文头部开始,这个OSPFOSPF报文头部对于所有的报文报文头部对于所有的报文类型都是相同的。类型都是相同的。类型类型名称名称描述描述1Hello发现邻居并在
10、它们之间建立邻接关系2数据库描述(DBD)检查路由器的数据库之间是否同步3链路状态请求(LSR)向另一台路由器请求特定的链路状态记录4LSU发送请求的链路状态记录5LSAck对其他类型的分组进行确认OSPF报头 Version numberVersion number TypeType Packet lengthPacket length Router IDRouter ID Area IDArea ID ChecksumChecksum Authentication typeAuthentication type AuthenticationAuthentication DataDataOS
11、PF状态 OSPFOSPF的接口可以处于下面的接口可以处于下面8 8种状态之一种状态之一 Dwon Dwon 停止停止 Attempt Attempt 尝试尝试 Init Init 初始初始 Two-way Two-way 双向双向 Exstart Exstart 准启动准启动 Exchange Exchange 交换交换 Loading Loading 加载加载 Full adjacency Full adjacency 完全邻接完全邻接OSPF状态OSPF状态课程议题单区域单区域单区域单区域OSPFOSPF配置配置配置配置配置命令 创建创建OSPFOSPF路由进程路由进程 process-
12、idprocess-id只是在本路由器有效只是在本路由器有效 addressaddress和和inverse-maskinverse-mask为网络为网络( (或接口或接口) )地址和地址和wildcard maskwildcard mask。 area-idarea-id为区域号为区域号Router(config)#router ospf process-idRouter(config-router)#network address inverse-mask area area-id 配置示例验证OSPF配置 在配置完成后,可以使用在配置完成后,可以使用showshow命令来查看其状态:命令
13、来查看其状态: 显示路由器通过学习获得的路由和这些路由是如何学习的,这是确定本地显示路由器通过学习获得的路由和这些路由是如何学习的,这是确定本地路由器和其他网络之间连接的最好方法之一路由器和其他网络之间连接的最好方法之一 显示邻居路由器的详细信息,包括它们的优级和状态。显示邻居路由器的详细信息,包括它们的优级和状态。Router#show ip routeRouter#show ip ospf neighbor detail 验证OSPF配置 显示路由器维护的拓扑数据库的内容,这条命令可以显示路由器显示路由器维护的拓扑数据库的内容,这条命令可以显示路由器IDID和和OSPFOSPF进程进程ID
14、ID,用这条命令的一些关键字可以显示数据库的类型。,用这条命令的一些关键字可以显示数据库的类型。 用来检验已经配置在目标的区域中的接口,如果没有指定环回地址,接口用来检验已经配置在目标的区域中的接口,如果没有指定环回地址,接口地址就会被认为是路由器地址就会被认为是路由器IDID,它也显示定时器的时间间隔,包括,它也显示定时器的时间间隔,包括hellohello分组分组的时间间隔,还能显示毗邻关系。的时间间隔,还能显示毗邻关系。Router#show ip ospf database Router#show ip ospf interface 验证OSPF配置 用来显示最短路径优先算法执行次数,
15、它也显示拓扑结构没有发生改变时,用来显示最短路径优先算法执行次数,它也显示拓扑结构没有发生改变时,链路状态的的更新的时间间隔。链路状态的的更新的时间间隔。 Clear ip route * Clear ip route * 是用来清除整个是用来清除整个ipip路由选择表路由选择表 Debug ip ospf Debug ip ospf 是用来测试是用来测试OSPFOSPF 但禁止在生产的环境中使用该命令但禁止在生产的环境中使用该命令Router#show ip ospf Router#clear ip route *Router#debug ip ospf 课程议题总结总结总结总结总结 在单区
16、域中使用在单区域中使用OSPFOSPF路由选择协议适合于小型网络;路由选择协议适合于小型网络; OSPFOSPF协议的配置与其他路由协议相似,不同的是它是一协议的配置与其他路由协议相似,不同的是它是一种链路状态协议种链路状态协议 OSPFOSPF需要一个进程需要一个进程IDID和一个路由器和一个路由器IDID。 OSPFOSPF链路状态路由协议不同于距离矢量路由协议,链路状态路由协议不同于距离矢量路由协议,OSPFOSPF的路由器基于网络拓扑结构的完整信息来决定最佳路径。的路由器基于网络拓扑结构的完整信息来决定最佳路径。OSPFOSPF决定最佳路径的度量值是成本(决定最佳路径的度量值是成本(c
17、ostcost),它是基于),它是基于链路的速度,配合分级设计,链路的速度,配合分级设计,OSPFOSPF适用于大型网络。适用于大型网络。总结 最短路径算法用于决定最佳的无环路径,即到达链路或网最短路径算法用于决定最佳的无环路径,即到达链路或网络成本最低的路径。因为络成本最低的路径。因为OSPFOSPF路由器需要一个完整网络路由器需要一个完整网络拓扑,并且拓扑,并且SPFSPF算法比较复杂,所以需要内存更多的更强算法比较复杂,所以需要内存更多的更强大的路由器。大的路由器。 OSPFOSPF使路由器之间在交换路由信息前建立邻居关系。使路由器之间在交换路由信息前建立邻居关系。OSPFOSPF的的HelloHello协议用于在毗邻路由器(协议用于在毗邻路由器(adjacency adjacency routersrouters)间建立邻居关系。)间建立邻居关系。