©2004,BDCOM,公司介绍3.0版起始页面©2004,BDCOM,公司介绍3.0版OSPF开放式最短路径优先课程介绍©2004,BDCOM,公司介绍3.0版OSPF协议简介OSPF基本原理OSPF基本配置培训目标©2004,BDCOM,公司介绍3.0版OSPF协议简介随着Internet技术在全球范围的飞速发展,OSPF已成为目前Internet广域网和Intranet企业网采用最多、应用最广泛的路由协议之一。OSPF(OpenShortestPathFirst)路由协议是由IETF(InternetEngineeringTaskForce)IGP工作小组提出的,是一种基于SPF算法的路由协议,目前使用的OSPF协议是其第二版。©2004,BDCOM,公司介绍3.0版OSPF协议特性OSPF:OpenShortestPathFirst•内部网关路由协议•链路状态路由协议•基于SPF算法•支持可变长子网掩码VLSM•具有更快的收敛速度©2004,BDCOM,公司介绍3.0版内部网关路由协议•OSPF是一种典型的内部网关路由协议(InteriorGatewayProtocol,IGP),一般用于同一个路由域内,在这里,路由域是指一个自治系统(AutonomousSystem,AS)内决策路由。•自治系统是指一组通过统一的路由政策或路由协议互相交换路由信息的网络。©2004,BDCOM,公司介绍3.0版什么是自治系统?Area0骨干域Area1Area2自治系统ASISPASBRABRABRABRIR©2004,BDCOM,公司介绍3.0版链路状态路由协议•OSPF是一种链路状态路由协议。这意味着路由选择的变化基于网络中路由器物理连接的状态与速度,并且变化被立即广播到网络中的每一个路由器。•链路状态指的是一个路由器的局部信息状态、路由器相连的网络状态信息、外部状态信息等。•所有的OSPF路由器都维护一个相同的描述链路状态的数据库。•OSPF将LSA(LinkStateAdvertisement,链路状态广播数据包)传送给在某一区域内的所有路由器。©2004,BDCOM,公司介绍3.0版基于SPF算法•最短路径优先(SPF)路由算法•SPF算法又称Dijkstra算法。•所有的路由器并行运算SPF算法,•根据该路由器的拓扑数据库构造出以它自己为根结点的最短路径树。•这个最短路径树就生成了路由表©2004,BDCOM,公司介绍3.0版OSPF协议简介OSPF基本原理OSPF基本配置培训目标©2004,BDCOM,公司介绍3.0版本章内容提要•OSPF的网络类型有哪些?•OSPF的一些基本概念。•OSPF的工作原理•OSPF报文的类型及格式•LSA报文的分类•OSPF域的几种类型•虚链路的概念及原理©2004,BDCOM,公司介绍3.0版OSPF网络类型•OSPF有4种网络类型或模型广播型点到点NBMA网络点到多点网络•根据网的类型不同,OSPF工作方式也不同,懂得OSPF在各种网络模型上如何工作很重要,特别是在设计一个稳定的强有力的网络时。©2004,BDCOM,公司介绍3.0版OSPF网络类型(一)•广播型网络:是一种具有多个访问设备的网络,同时可连多于两个设备,例如以太网,tokenring,FDDI。•需要进行DR/BDR的选举•所有的非DR/BDR路由器和DR/BDR形成完全邻接关系•DROTHER通过DR/BDR交换信息©2004,BDCOM,公司介绍3.0版OSPF网络类型(二)•点到点网络:如E1线路,是连接单独一对路由器的网络。这种网络上的邻居间总是可以形成邻接。1.适用于部分互连或星形拓扑结构里2.不需DR,只使用单独的一个子网3.自动发现邻居4.LSU包被发送到每个邻居路由器的接口©2004,BDCOM,公司介绍3.0版OSPF网络类型(三)•NBMA(Non-BroadcastMulti-Access)网络:可以连多个设备的网络,但是没有广播能力,例如framerelay,x.25,ATM•一个设备发出的报文不会被所有的设备收到•所以,OSPF路由器要选择DR和BDR,•邻居关系需要手工配置,所有的OSPF报文为单播X.25FrameRelay©2004,BDCOM,公司介绍3.0版OSPF网络类型(四)•点到多点网络点到多点网络是NBMA网络的一个特殊配置•可以看成是点到点链路的集合。•所以,在这样的网络上不选举DR和BDR.©2004,BDCOM,公司介绍3.0版OSPF基本概念—区域•为什么划分域?•区域划分的要求•内部路由器•区域边界路由器•自治系统边界路由器©2004,BDCOM,公司介绍3.0版OSPF基本概念—区域[续]Area0骨干域Area1Area2自治系统ASISPASBRABRABRABRIR©2004,BDCOM,公司介绍3.0版OSPF基本概念—路由器标识ISPRouterID192.168.43.105路由器标识:该路由器上最高的LOOPBACK地址若无回环地址,则优先使用最高位IP地址©2004,BDCOM,公司介绍3.0版OSPF基本概念—DR和BDR•DR:在一个广播性的、多接入的网络中,存在一个指定路由器(DesignatedRouter)。•DR的作用:与所有其他邻居同步(节省网络开销)产生networklsa用以描述网络链路状态•BDR的作用:做为DR的备份,在DR失效时接管它。©2004,BDCOM,公司介绍3.0版OSPF基本概念—DR和BDR[续]•多路访问网络中DR(指定路由器)的设计思想是使邻接的数目减少•多路访问网络中路由器只与DR和BDR建立邻接。•优先级最高的路由器做为DR。•一旦DR选出,其他路由器无法替代,除非这个DR失效©2004,BDCOM,公司介绍3.0版工作原理-OSPF协议工作流程•与邻居形成完全邻接关系——发现邻居——双向通信——数据库同步•将链路状态数据库更新扩散给其他路由器•路由器计算最短路径树,生成路由表。©2004,BDCOM,公司介绍3.0版工作原理-邻接如何形成Hello发送hello包,DR未选出Hello发送hello包应答,之后选出DR和BDR172.16.5.1/24172.16.5.2/24Down状态Init状态Two-Way状态路由器A路由器B©2004,BDCOM,公司介绍3.0版工作原理-邻接如何形成[续]开始选举用来交换数据库描述报文的主机确定主从关系发送数据库描述报文交换数据库描述报文172.16.5.1/24172.16.5.2/24Exstart状态路由器BHelloHelloExchange状态DBDDBD路由器A©2004,BDCOM,公司介绍3.0版工作原理-邻接如何形成[续]172.16.5.1/24172.16.5.2/24Loading状态路由器BLSAckLSAckFull状态互发LSAck报文确认LSR发送链路状态请求和链路状态更新报文发送链路状态请求和链路状态更新报文LSU更新数据库,发送LSAck确认LSAck路由器A©2004,BDCOM,公司介绍3.0版工作原理-扩散(Flooding)DR(224.0.0.6)BDR(224.0.0.6)LSULSUDROtherDROtherDROther©2004,BDCOM,公司介绍3.0版工作原理-扩散[续]DR(224.0.0.6)BDR(224.0.0.6)LSULSULSUDROtherDROtherDROther©2004,BDCOM,公司介绍3.0版工作原理-扩散[续]DR(224.0.0.6)BDR(224.0.0.6)LSUDROtherDROtherDROther如果路由器还连接其他网络LSULSULSULSULSU©2004,BDCOM,公司介绍3.0版工作原理-LSA操作流程LSALSDB中有相应条目吗?与LSDB中相应条目的版本号一致吗?yes忽略这个LSANO加到LSDB中反馈LSAck扩散LSA运行SPF算法算出新的路由表AENDyesNO比LSDB中相应条目的版本号更新吗?GOTOAyesNO反馈LSU信息给发送源END©2004,BDCOM,公司介绍3.0版OSPF报文格式LinkHeadIPHeaderOSPF报文LinkTrailerOSPF报文在IP报文里的形式ProtocolIDNO.89=OSPFOSPF版本号包的类型包的长度源路由器的ID源区域的ID错误校验验证类型验证Data©2004,BDCOM,公司介绍3.0版OSPF报文类型类型报文名称功能1Hello发现并维持邻居2数据库描述(DBD)概括数据库容量3链路状态请求(LSR)请求数据库信息4链路状态更新(LSU)数据库更新5链路状态应答(LSAck)确认应答包©2004,BDCOM,公司介绍3.0版Hello报文格式Version#1PacketlengthRouterIDAreaIDChecksumAuthTypeAuthenticationAuthenticationNetworkMaskHelloIntervalOptionsRtrPriRouterDeadIntervalDesignatedRouterBackupDesignatedRouterNeighbor©2004,BDCOM,公司介绍3.0版Hello报文说明•三大作用:建立邻居;选举DR;维护链路状态•一般发送到组播地址224.0.0.5,不支持组播的情况下发送到单播地址。•TTL=1•定期在所有OSPF已配置接口上发送•报文中包含所有本接口看到的邻居•同一接口上所有路由器的参数要一致•超时未收到hello认为ospf链路断开©2004,BDCOM,公司介绍3.0版DBD报文格式VersionType=2PacketlengthRouterIDAreaIDChecksumAuthTypeAuthenticationAuthentication000Options00000IMMSDDsequencenumberALinkStateAdvertisementHeader……©2004,BDCOM,公司介绍3.0版DBD报文说明•用于快速同步链路状态数据库•描述了链路状态数据库中的内容•在初始化建立网络邻居时交换此种报文•分为主机master和从机slave,主机负责序号加1,以做确认。•由收到的DD报文判断本地链路信息是否缺失或过期,若然,则发LSR请求更新LSA©2004,BDCOM,公司介绍3.0版LSR报文格式Version3PacketlengthRouterIDAreaIDChecksumAuthTypeAuthenticationAuthenticationLStypeLinkStateIDAdvertisingRouter……©2004,BDCOM,公司介绍3.0版LSR报文说明•用于向邻居发送需要更新LSA的请求•通过序列号、LS校验和、LSage来判断新旧•没有LSU的应答则要以重传间隔定期发送©2004,BDCOM,公司介绍3.0版LSU报文格式Version3PacketlengthRouterIDAreaIDChecksumAuthTypeAuthenticationAuthenticationLSAcountLSAs……©2004,BDCOM,公司介绍3.0版LSU报文说明•LSU的功能:1、收到请求发送更新2、收到更新扩散更新3、链路变化触发更新•多条LSA可加载到一个LSU报文中发送•如果没有收到确认应答,则重传•需要重传则要单播发送到对端邻居©2004,BDCOM,公司介绍3.0版LSAck报文格式Version3PacketlengthRouterIDAreaIDChecksumAuthTypeAuthenticationAuthenticationALinkStateAdvertisementHeader……©2004,BDCOM,公司介绍3.0版LSAck报文说明•用于确认收到链路状态更新的LSA•多条lsa可用