1、OSPF,Routing Protocols and Concepts Chapter 11,Objectives,描述OSPF背景基本特性 识别和应用基本 OSPF 配置命令 描述、编辑和计算 OSPF使用的 metric 描述在多路访问networks中 DR/BDR的选择过程 描述在OSPF 中另外的一些配置命令,11. OSPF,11.1 Introduction to OSPF 介绍OSPF 11.2 Basic OSPF Configuration 基本OSPF配置 11.3 The OSPF Metric OSPF度量值 11.4 OSPF and Multiaccess Net
2、works OSPF和多路访问网络 11.5 More OSPF Configuration 更多的OSPF配置,11.1 Introduction to OSPF,11.1.1 Background of OSPF OSPF背景 11.1.2 OSPF Message Encapsulation OSPF消息封装 11.1.3 OSPF Packet Types OSPF包的类型 11.1.4 Hello Protocol Hello协议 11.1.5 OSPF Link-State Updates OSPF链路状态更新 11.1.6 OSPF Algorithm OSPF算法 11.1.7
3、 Administrative Distance 管理距离 11.1.8 Authentication 鉴定,11.1.1 Background of OSPF,开始于 1987 by Internet Engineering Task Force (IETF) 1989 OSPFv1 发布 RFC 1131,该版本是实验性的 1991 OSPFv2 发布 RFC 1247 1998 OSPFv2 更新 RFC 2328 1999 OSPFv3 公布 RFC 2740 OSPF,11.1.2 OSPF Message Encapsulation,OSPF packet有五种类型 OSPF pa
4、cket header 和packet type-specific data 被封装在IP packet 在IP packet header, 协议字段为89 指出OSPF 在IP packet header,destination address 是两个之一: 224.0.0.5 或 224.0.0.6,该地址代表所有OSPF路由器 如果OSPF packet 被封装在Ethernet frame 目的的 MAC 地址是multicast address: 01-00-5E-00-00-05 或01-00-5E-00-00-06.,11.1.3 OSPF Packet Types,五种不同类
5、型的OSPF LSPs packet. 每种packet服务于OSPF routing过程的特定目的,11.1.4 Hello Protocol,Hello Packet的目的:发现 OSPF 邻居并建立和维护毗邻关系 两个routers 必须同意成为邻居.,在像Ethernet 和Frame Relay这样多路访问的networks环境中选择一个DR 和一个BDR,11.1.4 Hello Protocol,Hello Packet的目的:发现 OSPF 邻居并建立和维护毗邻关系 两个routers 必须同意成为邻居.,11.1.4 Hello Protocol,Type: Hello (1
6、), DBD (2), LS Request (3), LS Update (4), LS ACK (5) Router ID:源router 的 ID Area ID : packet 来源 area Network Mask : 发送interface的Subnet mask Hello Interval : 两hellos packet的间隔 Dead interval : Router在预定的时间内没有接收到Hello packet就宣布该邻居down Router Priority(优先级):用于选择DR或BDR DR: 指定的DR 的Router ID BDR:指定的备份 Rout
7、er ID List of Neighbors : 列出邻居router(s)的Router ID,11.1.4 Hello Protocol,两个routers 建立毗邻之前,必须有三个共识:Hello interval, 失效(Dead )interval, 和 network type Hello interval: 在multiaccess 和point-to-point 段缺省情况,每10 秒 在non-broadcast multiaccess (NBMA) 段 (Frame Relay, X.25, ATM) 每30 秒 Dead interval: 在multiaccess 和
8、point-to-point 缺省情况,每40 秒 在NBMA segments 每120 秒 如果Dead interval 时间已经到,没有接收到Hello packet,OSPF将从数据库中删除该邻居,并将关于该邻居down的信息泛洪给所有OSPF enabled interfaces .,11.1.4 Hello Protocol,因为multiaccess networks可以支持两台以上的Router,所以OSPF选举一个指定路由器(DR,Designated Router) 作为所有链路状态更新和LSA的集中点。 因为DR很重要,所以还要选举一个备份指定路由器 (BDR, Bac
9、kup Designated Router)作为备用。一旦DR失效,BDR就可以平滑地接替。,11.1.5 OSPF Link-State Updates,Link State Update (LSU)的目的:发送 link state 广播 链路状态广播(LSA, Link State Advertisement)包含邻居和路径成本的信息,11.1.6 OSPF Algorithm,OSPF 运算法则(Algorithm) OSPF routers 接收来自其它router的LSA,建立和维护 link-state 数据库,SPF 算法作用于数据库的信息 OSPF 用 SPF 算法创建SPF
10、 tree SPF tree 用于构建 routing table,拓扑改变,接收信息,运行,创建,更新,11.1.7 Administrative Distance,OSPF缺省的管理距离是 110,11.1.8 Authentication,OSPF的 验证(Authentication)可以加密和验证routing information 需要在接口明确配置 Routers 将只接收用相同password和验证信息配置的 routers 的 routing information 验证不加密 routing table,11.2 Basic OSPF Configuration,11.2
11、.1 Lab Topology 实验室拓扑 11.2.2 The router ospf Command 路由器的ospf 命令 11.2.3 The network Command 网络命令 11.2.4 OSPF Router ID OSPF的路由器ID 11.2.5 Verifying OSPF 验证OSPF 11.2.6 Examining the Routing Table 检查路由表,11.2.1 Lab Topology,不连续的 IP addressing 计划,由于OSPF 是一个 无类路由选择协议 ,要配置subnet mask。 三条 serial links 的带宽是不
12、一样的,每个router有多条paths 到达remote network.,11.2.2 The router OSPF Command,在OSPF 的配置中要使用进程id(process-id),process-id指本地router的一个进程号,用于区分同一台router上的多个OSPF进程,取值范围在1 到65535之间,由网络管理员选择。 R1(config)#router ospf process-id,11.2.3 The network Command,在router 任一接口必须配置network address,以便发送和接收OSPF packets.wildcard ma
13、sk:subnet mask 的反码,通过比较它对地址进行解释 area-id : 一组共享link state information 的routers Router(config-router)#network network-address wildcard-ask area area-id,11.2.4 OSPF Router ID,Router ID的作用: 在OSPF routing domain中唯一地识别每个router 来自于一个活动的接口。如果这个接口失效了,OSPF进程就无法继续。配置 loopback 地址作为 Router ID,可以保证OSPF的稳定性 确定Rout
14、er ID的标准: 用router-id 命令配置 如果没有配置,router 选择loopback interfaces 中最高的IP address 如果没有配置loopback interfaces ,选择物理接口最高的活动的IP address,11.2.4 OSPF Router ID,查看 router ID Show ip protocols Show ip ospf Show ip ospf interface,192.168.10.9高于192.168.10.2 10.10.10.1,192.168.10.5高于192.168.10.1 172.16.1.17,192.168
15、.10.10高于192.168.10.6 172.16.1.33,11.2.4 OSPF Router ID,OSPF router-id 命令 Router(config)#router ospfprocess-id Router(config-router)#router-idip-address 编辑 Router ID Router#clear ip ospf process,11.2.4 OSPF Router ID,确定Router ID的标准 用router-id 配置 如果没有配置,router 选择loopback interfaces 中最高的IP address 如果没有
16、配置loopback interfaces ,选择物理接口最高的活动的IP address,11.2.5 Verifying OSPF,show ip ospf neighbor:,Router ID,接口的优先级,接口的状态FULL表示 router 和它的邻居有同一个 OSPF link-state databases,当接收到Hello packet 被设置。接着router 等待接收Hello packet,如果在预定时间内没有接收到Hello packet就宣布该邻居down,与router直连的邻居接口的IP address,与邻居毗连的 router interface,11.2
17、.5 Verifying OSPF,process ID,router ID,router 发送广播的网络,管理距离,show ip protocols,11.2.5 Verifying OSPF,有时一条link 如串行线路可能会快速up 和down (称为翻动flapping)。如果一条翻动的link导致产生了一系列的LSU,那么接收到这些update 的router 将不得不重新运行SDF算法来计算新的 route。 长时间的翻动会严重影响 router 的性能,不断重复进行的SDF计算会导致router的CPU 负担过重,而且连续不断的 update 会使Router 永远不会收敛 为
18、了将这个问题的影响减到最小Cisco IOS使用SPF保持定时器(SDP hold timer)。 每次接收到一个LSU ,router 在运行SPF之前先等待由hold timer规定的一段时间。,11.2.5 Verifying OSPF,show ip ospf,process ID,router ID,OSPF area 信息,SPF 算法计算的最后时间。在11个半小时之前发送了hello,接收LSU后等待5 seconds (5000 msecs)才运行SPF 算法 运行SPF算法后等待10 seconds (10000 msecs)运行下一个SPF算法,11.2.5 Verifyi
19、ng OSPF,show ip ospf interface:显示 hello interval 和 dead interval,11.2.6 Examining the Routing Table,show ip route 检查 routing table OSPF 不自动汇总到主网络边界,11.3 The OSPF Metric,11.3.1 OSPF Metric OSPF 度量值 11.3.2 Modifying the Cost of the Link 修改链路成本,11.3.1 OSPF Metric,OSPF 用成本(cost)作为 metric 来确定 best route
20、best route 具有最低的 cost Cost 基于接口的 bandwidth,公式:108 / bandwidth,参考 带宽 缺省值100Mbps 用 auto-cost reference-bandwidth 命令可以修改参考值,1000bps=1Kbps 1Mbps=1000Kbps 100Mbps =100000Kbps=100000000bps= 108 bps,11.3.1 OSPF Metric,COST 是累加值,从R1到10.10.10.0,T1=64 FastEthernet =1 结果=65,11.3.1 OSPF Metric,Bandwidth 用于routi
21、ng protocols计算 routing metric,缺省的带宽,实际的带宽,11.3.1 OSPF Metric,R1到达192.168.10.8有两条相同成本的路径?不懂! 经由R2:64K+128K,经由R3:256K+128K,11.3.1 OSPF Metric,64 显示的是 T1 link 的成本,它的带宽是1562 。,要让OSPF正确地计算路由,连接到同一条链路上的所有Interface 必须使用使用相同的成本。 可以通过命令改变成本,以便影响OSPF计算的结果。最常见的改变成本的情况发生在多厂商设备的路由选择环境中,11.3.2 Modifying the Cost
22、of the Link,通常link 实际速度与缺省的带宽是不一样的,因此需要用带宽的值反映实际速度,以便routing table 能够有best path information show interface 可以显示接口的带宽,11.3.2 Modifying the Cost of the Link,serial link 两端应该配置相同的 bandwidth 修改带宽: Router(config-if)#bandwidth bandwidth-kbps 直接指定接口的成本:Router(config-if) #ip ospf cost 1562,11.3.2 Modifying
23、the Cost of the Link,比较,11.4 OSPF and Multiaccess Networks,11.4.1 Challenges in Multiaccess Networks 多路访问网络 11.4.2 DR/BDR Election Process DR/BDR的选举过程 11.4.3 OSPF Interface Priority OSPF 接口优先权,11.4.1 Challenges in Multiaccess Networks,OSPF 定义了五种类型 network types:,11.4.1 Challenges in Multiaccess Netw
24、orks,Ethernet LANs 是一个 broadcast multiaccess network. 因为网络中所有的设备都能看到所有的frames point-to-point network 只有两个devices,11.4.1 Challenges in Multiaccess Networks,11.4.1 Challenges in Multiaccess Networks,多路访问networks 对OSPF LSAs泛洪具有挑战 每对routers有一个毗邻,将创建多个毗邻 会有大量的LSAs 泛洪,毗邻计算公式:n ( n - 1 ) / 2 n=Router numbe
25、r,11.4.1 Challenges in Multiaccess Networks,当OSPF 初始化或拓扑改变,将会有大量LSA flooding,每个router 发送LSA flooding 给每个router 每个router 接收到LSA flooding还要发送确认,11.4.1 Challenges in Multiaccess Networks,解决LSAs flooding 的问题 指定的router(DR, Designated router) 指定的备份router(BDR, Backup designated router) Drothers:非DR、BDR Sen
26、ding & Receiving LSA DRothers 用224.0.0.6发送 LSAs 给 DR 和 BDR DR用224.0.0.5转发 LSA 给所有其它 routers,R1发送LSA给DR和BDR,DR转发LSA给所有的Router,11.4.2 DR/BDR Election Process,在 point to point networks中不需要DR/BDR,11.4.2 DR/BDR Election Process,DR/BDR 的选举发生在 multiaccess networks,11.4.2 DR/BDR Election Process,选举DR/BDR的标准
27、 DR:最高OSPF interface 优先级的Router BDR:次高OSPF interface 优先级的Router 如果OSPF interface 优先级相等则选举最高router ID.,Interface 优先级相等,选举最高router ID,11.4.2 DR/BDR Election Process,首先Boot up成功的routers 成为DR,紧接着是BDR,11.4.2 DR/BDR Election Process,RC是DR, RB是BDR, RA是DROther,RC失效, RB成为DR, RA成为BDR,11.4.2 DR/BDR Election Pr
28、ocess,Rc也成为DROther,新增加的RD成为DROther,尽管它的Router ID最高,11.4.2 DR/BDR Election Process,作为BDR的RA失效RD由DROther升级为BDR,作为DR的RB失效RD升级由为DR,RC升级为BDR,11.4.3 OSPF Interface Priority,DR 承担收集和发布LSAs的任务,需要有足够的CPU 和memory 能力 通过 ip ospf priority interface 改变接口的优先级,将影响DR和BDR的选举,应该在选举之前修改优先级 Router(config-if)#ip ospf pri
29、ority 0 - 255 优先级号范围 0 到 255 0 意味着 router 不能成为 DR 或 BDR 1 为缺省值,11.4.3 OSPF Interface Priority,11.5 More OSPF Configuration,11.5.1 Redistributing an OSPF Default Route 重新分配一个OSPF缺省路径 11.5.2 Fine-tuning OSPF 细微地调整OSPF配置,11.5.1 Redistributing an OSPF Default Route,Autonomous System Boundary Router (ASB
30、R). 连接到non-OSPF network 用于传播 default route,11.5.1 Redistributing an OSPF Default Route,必须在R1配置 R1(config)#ip route 0.0.0.0 0.0.0.0 loopback 1 用default-information originate 命令广播0.0.0.0/0 static default route 给域中其它 routers R1(config-router)#default-information originate,11.5.1 Redistributing an OSPF
31、Default Route,R1的路由表最后的网关(gateway of last resort) in the routing table是0.0.0.0 由 ip route 0.0.0.0 0.0.0.0 设置,11.5.1 Redistributing an OSPF Default Route,R2路由表最后的网关经过192.168.10.10到0.0.0.0 E2 表示 route是一个 OSPF External Type 2 route.,11.5.2 Fine-tuning OSPF,Cost 基于接口的 bandwidth,公式:108 / bandwidth 当bandw
32、idth 值为100 Mbps ,OSPF成本为1. Gigabit 和10Gig Ethernet有更高的bandwidth 为了获得更精确的计算,需要调整参考值 用 auto-cost reference-bandwidth 命令可以修改参考 bandwidth 数值(缺省值是 100 )R1(config-router)#auto-cost reference-bandwidth 10000,11.5.2 Fine-tuning OSPF,11.5.2 Fine-tuning OSPF,修改之前修改之后,11.5.2 Fine-tuning OSPF,在一些情况下,需要加快链路状态失效的
33、报告速度。通过配置定时器可以达到此目的。Router(config-if)#ip ospf hello-interval secondsRouter(config-if)#ip ospf dead-interval seconds Hello 和 Dead intervals 必须在毗邻的两routers之间匹配,11.5.2 Fine-tuning OSPF,11.5.2 Fine-tuning OSPF,修改之前修改之后,S0/0/0DOWN毗邻丢失,11.5.2 Fine-tuning OSPF,R2的时间值与R1修改后的不一样,所以接口Down修改R2的时间参数,S0/0/0 FULL
34、 毗邻建立,Summary,OSPF 特点 link state routing protocol 在多路访问networks 使用 DR 和 BDR,用于接收和转发 LSAs DR 和 BDR 通过选举获得 使用五种类型的 packet : HELLO (HELLO)DATABASE DESCRIPTION (DBD)LINK STATE REQUEST (LSR)LINK STATE UPDATE (LSU) LINK STATE ACKNOWLEDGEMENT (LSA) Metric = cost 最低 cost = best path 使用 Router ID唯一地识别每个router,Summary,Configuration R1(config)#router ospf process-id Router(config-router)#network network-address wildcard-mask area area-id 检查 OSPF 配置 show ip protocol show ip route show ip ospf interface show ip ospf neighbor,Active,11.4.1 Challenges in Multiaccess Networks Use the(2,4,5),