ISSUE固网产品课程开发室OSPF在城域网中的应用1.0华为公司合肥技术服务部2005年9月互联网技术提纲物理层和数据链路层技术网络层技术网络层寻址和基于路由的转发协议寻址(IP、IPX、AppleTake)网络层内部网关路由协议及路由再分配(RIP、OSPF、ISIS)网络层外部网关路由协议及路由再分配(IP:BGPv4)非IP路由协议业务流管理IPFeatureOSPF协议概述无路由自环可适应大规模网络路由变化收敛速度快支持区域划分支持等值路由支持验证支持路由分级管理支持以组播地址发送协议报文OSPF协议6个实体:RouterRouterinteralrouter:使用基本路由算法的一个简单拷贝;areaborderrouter:使用基本路由算法的多个拷贝,一类用于于之相连的各个area,另一类用于area0;backbonerouter:一类是area0内的interalrouter,一类是areaborderrouter,它们使用的路由算法拷贝随其基本类型不同而不同;ASboundaryrouter:无论其位置,它同外部AS路由器交换路由;OSPF协议6个实体:Router续1Area0Area1Area3RIPBGPOSPF协议6个实体:Router续2RouterID一个32-bit的无符号整数,是一台路由器的唯一标识,在整个自治系统内唯一OSPF协议6个实体:NetworkTypeNetworkType(OSPF网络接口类型)点到点:总是成为adjacency,noDR,noBDR;双方总能收到destinationaddress是224.0.0.5的ALLSPFRouter组播;广播:将选举DR、BDR;DR以destinationaddress224.0.0.5发送ALLSPFRouter组播;otherrouter以destinationaddress224.0.0.6发送ALLDRouter作链路状态更新和链路状态确认;只有一个路由器有资格参加DR、BDR选举,将只有DR没有BDR;没有一个路由器有资格参加DR、BDR选举,将无法形成adjacency,始终保持在2-way状态;点到多点:作为point-to-point看待,不要选举DR、BDR;所有OSPF包使用unicast;OSPF协议6个实体:NetworkType续1NetworkType续(OSPF网络接口类型)非广播多路访问:将选举DR、BDR;所有OSPF包使用unicast;有可能需要在DR上使用neighbor/peer语句;Virtuallink:unmunberedpoint-to-pointnetwork,belongtobackbone,betweentwoABRs;;所有OSPF包使用unicast;必须配置在两个ABRs间;transitarea不能是stubarea,并且必须全路由;displayospfinterfaceOSPF协议6个实体:NetworkType续2NetworkType续(OSPF网络接口类型)一个运行OSPF协议的接口状态根据接口的不同类型可划分为:DR、BDR、DROther、point-to-pointdisplayospfinterfaceOSPF协议6个实体:协议报文协议报文Hello报文:发现及维持邻居关系,选举DR,BDR;DD报文:交换LSDB的概要信息;LSR报文:向对端请求自己没有的LSA;LSD报文:回应对方的LSA请求;LSAck:收到LSU之后,进行确认;OSPF协议6个实体:协议报文续1协议号OSPF是基于IP的,其协议号是89OSPFHeaderProtocol#89OSPFPacket通常OSPF的协议报文是不被转发的,只能传递一跳,即在IP报文头中TTL值被设为1。(虚连接除外)OSPF协议6个实体:协议报文续2RT1RT2DownDownHello(DR=0.0.0.0,NeighborsSeen=0)Hello(DR=RT2,NeighborsSeen=RT1)DD(Seq=x,I=1,M=1,MS=1)DD(Seq=y,I=1,M=1,MS=1)DD(Seq=y,I=0,M=1,MS=0)DD(Seq=y+1,I=0,M=1,MS=1)DD(Seq=y+1,I=0,M=1,MS=0)DD(Seq=y+n,I=0,M=0,MS=1)DD(Seq=y+n,I=0,M=0,MS=0)LSRequestLSUpdateLSAckExStartExStartInitExchangeExchangeLoadingFullFullOSPF协议6个实体:协议报文续3DownAttemptInit2-wayExStartExchangeLoadingFullOSPF的邻居状态机收到了hello分组,但缺少RID建立邻接关系,等待交换LSA数据库开始交换LSA数据库交换LSA数据库完毕,重新传输丢失的LSARouter收到LSA更新将立即转发更新消息;LSA更新必须被确认;更新过程直到所有Router同步LSA数据库;-已有此LSA则忽略-直到此LSA到达一个已经从其它方向收到此更新的RouterOSPF协议6个实体:LSAFR/X.25EthernetEthernetPPPOSPF协议6个实体:LSA续1LSALSA1:RouterLSA每个路由器都生成;描述了路由器的链路状态和花费,传递到整个区域LSA2:NetworkLSA由DR生成,描述了本网段的链路状态,传递到整个区域;LSA3:NetworkSummaryLSA由ABR生成,ABR作为gateway向area0中通告其相连area中的网络,并将它从area0得知的网络通告给与它相连的area;LSA4:ASBRSummaryLSA由ABR生成,它同NetworkSummaryLSA的差别是它通告的目标不是网段而是ASBR的主机地址,掩码为0.0.0.0;LSA5:ASExternalLSA由ASBR生成,将其它外部自治域的网络或到达其它外部自治域的缺省路由通告到本自治域(STUB区域除外);LSA7:NSSAExternalLSA由处于NSSA中的ASBR生成,它同ASExternalLSA的差别是它仅在生成此LSA7的NSSA中flooded;OSPF协议6个实体:LSA续2Area0Area1StubArea3NSSARIPBGPABRABRASBRASBROSPF协议6个实体:LSA续3LSDBLSAofRTALSAofRTBLSAofRTCLSAofRTD(2)每台路由器的LSDB(3)由链路状态数据库生成带权有向图CABD1235CABD123CABD123CABD123CABD123RTARTBRTCRTD3215(1)网络的拓扑结构(4)每台路由器分别以自己为根节点计算最小生成树OSPF协议计算路由过程OSPF协议6个实体:LSA续4每一条LSA(链路状态广播)都标记了生成者(用生成该LSA的路由器的RouterID标记),其它路由器只负责传输。这样不会在传输的过程中发生对该信息的改变或错误理解。路由计算的算法是SPF算法。计算的结果是一棵树,路由是树上的叶子节点。从根节点到叶子节点是单向不可回复的路径。OSPF协议6个实体:AreaAreaArea0:保留给backbone;所有域间流量需穿越Area0;如果只要一个area,可以不是area0,一旦有多个area就必须有area0,并且其它area要与它邻接;StubArea:不产生、不接收外部路由(没有LSA5、LSA4);除正常的OIA的路由外,依靠缺省路由O*IA到达外部区域;Not-So-StubbyArea:StubArea-LSA3‘sdefaultroute+NSSAExternalLSA;NSSA中的ASBR产生的LSA7将被ABR转换成LSA5传播到area0;TotallyStubArea:StubArea-NetworkSummaryLSA到域内、域外均依赖缺省路由;OSPF协议6个实体:PathPathintra-area:area内路由;inter-area:area间路由;type1external:cost=到达ASBR的cost+分布到OSPF域内时赋予的cost;type2external:此为缺省,cost=分布到OSPF域内时赋予的cost;OSPF协议3张表邻居表displayospfpeer链路状态表displayospflsdbOSPF路由表displayiprouting-tabledisplayospfrouting选举DRM=n(n-1)/2=28M=(n-2)×2+1=13DRBDRNBMA和点到多点NBMA:全连接点到多点:部分连接NBMA和点到多点续为PartiallyMeshedNBMA网络配置OSPF注意:selectingDRiskey!注意:使用point-to-multipoint时,不会有NetworkLSA出现,因此hub-spoken互连网络的路由将在其它area中不出现;解决办法:1)定义网络类型为broadcast接口下添加ospfnetwork-typebroadcast;原有frame-relaymapip添加broadcast参数;接口下添加ospfdr-priority,确定Hub作DR;2)定义网络类型为point-multipoint接口下添加ospfnetwork-typepoint-multipoint;不存在DR/BDR选举;3)使用NBMA缺省类型接口下添加ospfnetwork-typenon-broadcast;接口下添加peer〔HUB〕priorityx,确保Hub作DR;划分区域Area0Area1Area3划分区域续2划分区域的基本原则按照自然的地区或者行政单位划分;按照网络中的高端路由器来划分;按照IP地址的规律一些制约条件区域的规模;与骨干区域连通;ABR的处理能力;区域间的路由计算172.18.141.0/24192.178.14.0/28Type=3192.178.14.0Mask=255.255.255.240Metric=120Type=3172.18.141.0Mask=255.255.255.0Metric=91Area0Area3骨干区域和虚连接Area0Area12Area19VirtualLinkRTARTB与自治系统外部通信ASBRRouterID=1.2.3.410.53.11.0/24Type=510.53.11.0Mask=255.255.255.0Metric=10Type=41.2.3.4Mask=0.0.0.0Metric=89Area0Area2BGP区域和路由汇总Area0Area12Area19VirtualLinkArea819.1.1.0/2419.1.3.0/2419.1.2.0/24RTARTB区域和路由汇总续区域间汇总:路由域间汇总:abr-summary命令用来在区域边界路由器上配置路由聚合asbr-summary命令用来设置OSPF对引入的路由进行聚合如果本地路由器是区域边界路由器ABR,且是NSSA区域的转换路由器,则对由Type-7LSA转化成的Type-5LSA进行聚合处理,对于不是NSSA区域转换路由器的则不进行聚合处理。城域网内部IGP规划-OSPF核心层汇接层接入层汇聚路由器核心路由器城域网ASBRBASBASAR/PEAR/PEArea0部署策略:核心层设备所有下行及互联链路部署为Area0;汇接层下行链路根据连接拓扑关系划成多个非骨干区域建议每个区域不超过60台设备、500条路由;小规模城域网可以不划分区域,全部使用Area0建议每个区域至少包含2台汇接设备(ABR),尽可能规划为NSSA区域避免使用virtual-link,必