实验二 开放式最短路径优先协议OSPF
OSPF_协议的解析及详解

OSPF_协议的解析及详解OSPF协议的解析及详解一、引言OSPF(Open Shortest Path First)是一种开放式最短路径优先协议,用于在IP网络中进行路由选择。
本协议旨在提供高效、可靠、可扩展的路由选择机制,以满足大规模网络的需求。
本文将对OSPF协议进行解析和详解,包括协议的基本原理、工作机制、数据包格式、路由计算算法等内容。
二、OSPF协议基本原理1. 链路状态路由协议OSPF是一种链路状态(Link State)路由协议,它通过交换链路状态信息来构建网络拓扑图,从而计算最短路径。
每个路由器都维护一个链路状态数据库(Link State Database,LSDB),其中存储了整个网络的拓扑信息。
2. OSPF区域划分OSPF将网络划分为多个区域(Area),每个区域内部运行独立的SPF (Shortest Path First)计算,减少了计算复杂度和控制报文的传输量。
区域之间通过区域边界路由器(Area Border Router,ABR)进行连接。
3. OSPF邻居关系建立OSPF邻居关系是通过交换Hello报文来建立的。
当两个路由器在同一广播域内收到对方的Hello报文时,它们可以成为邻居,并交换链路状态信息。
三、OSPF协议工作机制1. Hello报文交换OSPF路由器通过周期性发送Hello报文来探测邻居,并维护邻居关系。
Hello报文包含了路由器的ID、Hello间隔时间等信息。
2. 链路状态信息交换OSPF邻居之间交换链路状态信息,包括链路状态更新报文(LSU)和链路状态请求报文(LSR)。
LSU报文用于广播链路状态信息,LSR报文用于请求缺失的链路状态信息。
3. SPF计算每个OSPF路由器通过收集链路状态信息,构建链路状态数据库,并使用SPF算法计算最短路径树。
SPF算法基于Dijkstra算法,通过计算最短路径树,确定到达目的地的最短路径。
4. 路由表生成根据最短路径树,每个OSPF路由器生成路由表,选择最佳路径并更新转发表。
实验二 开放式最短路径优先协议OSPF

实验二开放式最短路径优先协议OSPF 网工1301班吴兴龙 201326810917【实验目的】1. 掌握OSPF的报文格式2. 掌握OSPF的工作过程3.了解常见的LSA的结构及LSDB的结构【实验学时】建议4学时【实验环境配置】采用网络结构三【实验原理】一. OSPF的报文格式二. OSPF的工作过程三. OSPF链路状态公告类型路由器链路LSA:用来通知路由器的所有链路。
网络链路LSA:用来宣布连接到某个网络上的链路。
汇总链路到网络LSA:用来宣布在这个区域以外的其他网络的存在。
汇总链路到AS边界路由器LSA:用来宣布到AS边界路由器的路由。
外部链路LSA:用来宣布在AS外部的所有网络。
【实验步骤】练习一:分析OSPF报文,理解OSPF工作过程1.主机C、D启动协议分析器开始捕获数据,并设置过滤条件(提取OSPF协议)。
2.主机B和主机E启动OSPF协议并添加新接口:a.主机B启动OSPF协议(在命令行方式下,输入“ospf_config routerid1.1.1.1”);b.主机E启动OSPF协议(在命令行方式下,输入“ospf_config routerid2.2.2.2”);c. 添加主机B的接口:添加IP 为192.168.0.2 的接口:在命令行方式下输入“ospf_configinterface"192.168.0.2的接口名"0.0.0.0192.168.0.2255.255.255.0”;d. 添加主机E的接口:添加IP 为192.168.0.1 的接口:在命令行方式下输入“ospf_configinterface"192.168.0.1的接口名"0.0.0.0192.168.0.1255.255.255.0”;3.观察主机B、E的OSPF的相关信息,宏观了解该路由器的基本信息:a. 在命令行方式下,通过输入“ospf_configshowarea”察看区域信息。
开放式最短路径优先协议(OSPF) (2)

点到点式网络
在点到点链路中一般采用PPP或者HDLC的封装格式,OSPF自动 在点到点链路中一般采用PPP或者HDLC的封装格式,OSPF自动 检测接口类型,并且不需要进行DR/BDR的选举。 检测接口类型,并且不需要进行DR/BDR的选举。 在点到点模型中,既没有DR也没有BDR,直接相连的路由器形成 在点到点模型中,既没有DR也没有BDR,直接相连的路由器形成 邻接。 每个点到点链路要求一个分开的子网。 Hello记时器为10秒,dead间隔为40秒,等待间隔为40秒。 Hello记时器为10秒,dead间隔为40秒,等待间隔为40秒。
OSPF运行的模式
Point-to-multipoint nonbroadcast:如果VC中多播和广播能力没有 启用的话就不能使用point-to-multipoint模式,也路由器没办法多播 Hello包,邻居必须人工指定,不需选举DR/BDR。 Point-to-point:一个子网,不选举DR/BDR,当只有2个路由器的 接口要形成邻接关系的时候才使用,接口可以为LAN或WAN接口 。
帧中继拓扑
星型(Star/hub-and-spoke):最常见的帧中继网络拓扑,代价最 星型(Star/hub-and-spoke):最常见的帧中继网络拓扑,代价最 小。 全互连(Full-mesh):冗余,但是代价大。在这样的环境中计算 全互连(Full-mesh):冗余,但是代价大。在这样的环境中计算 VC的数量。使用n(n-1)/2的公式,n为网络中的节点数。 VC的数量。使用n(n-1)/2的公式,n 部分互连(Partial-mesh):前两种的折中方案。 部分互连(Partial-mesh):前两种的折中方案。
非广播式网络
NBMA网络比如帧中继,ATM和X.25,没有广播的能力。 NBMA网络比如帧中继,ATM和X.25,没有广播的能力。 有了非广播式模型, DR和BDR被选出,并且所有路由器与它们形 DR和BDR被选出,并且所有路由器与它们形 成邻接,这个联盟实现了优化扩散,因为所有LSA被送到DR,同 成邻接,这个联盟实现了优化扩散,因为所有LSA被送到DR,同 时DR将它们扩散到网络中每一个单独的路由器上。 DR将它们扩散到网络中每一个单独的路由器上。 因为广播式性能的缺陷,必须定义邻居来使用邻居命令。 所有路由器在同一个子网。 与广播式模型相同,也要选出DR,必须注意确认DR与所有的路由 与广播式模型相同,也要选出DR,必须注意确认DR与所有的路由 器有逻辑连接。 Hello记时器是30秒,终结间隔是120秒,等待间隔是120秒。 Hello记时器是30秒,终结间隔是120秒,等待间隔是120秒。
OSPF协议

OSPF协议简介OSPF(开放式最短路径优先)是一种内部网关协议(IGP),用于在大型企业网络或互联网中进行路由选择和转发。
它是一种链路状态路由协议,被广泛用于构建大规模的自治系统(AS)内部的动态路由网络。
OSPF的目标OSPF的设计目标是实现以下几个重要方面:1.可靠性:OSPF通过在网络中交换链路状态信息,实现了快速的网络收敛和故障恢复,以确保网络的高可靠性。
2.可扩展性:OSPF能够适应大型网络的扩展需求,支持分层设计和分区,使得网络可以灵活地增长和调整。
3.快速收敛:OSPF使用最短路径优先算法(SPF)来计算路由,能够快速选择最佳路径,并在网络拓扑发生变化时迅速收敛。
4.灵活的策略控制:OSPF提供了多种策略控制机制,如区域(Area)、路由汇总(Route Summarization)、路由过滤(Route Filtering)等,使得网络管理员能够根据实际需求进行灵活的路由控制。
OSPF的工作原理OSPF协议通过建立邻居关系、交换链路状态信息、计算最短路径和更新路由表等步骤来实现路由选择和转发。
1.邻居关系建立:OSPF路由器通过发送Hello报文来探测与相邻路由器之间的连接,建立邻居关系。
邻居关系的建立是通过交换Hello报文和协商参数来完成的。
2.链路状态信息交换:建立邻居关系后,OSPF路由器将链路状态信息(LSA)广播给邻居路由器,用于描述自身的链路状态和拓扑信息。
3.最短路径计算:OSPF路由器使用最短路径优先算法(SPF)来计算到达目的网络的最优路径,并生成路由表。
4.路由表更新:OSPF路由器根据最新的链路状态信息更新路由表,并将更新的路由信息发送给邻居路由器。
OSPF的优缺点OSPF协议具有以下优点和缺点:优点:‑高可靠性和快速收敛:OSPF能够快速收敛,自动适应网络拓扑的变化,并提供快速的故障恢复能力。
‑灵活的路由策略控制:OSPF支持多种路由策略控制机制,使得网络管理员能够根据实际需求进行灵活的路由控制。
第10讲 开放式最短路径优先OSPF

非骨干区域 物理连接 A1 A2
BB0 AB2 BB4
至其它AS 至其它 骨干区域 BB1 BC3 BB5 C0 C1
非骨干区域 物理连接 C2 C3 非骨干区域 逻辑连接
D1 D1 D3 D2 D4 末梢区域 逻辑连接 D3
D2 D4
域间汇总路由 200.199.48.0/22 区域1 区域 200.199.48.0/24 200.199.49.0/24 200.199.50.0/24 200.199.51.0/24
10.1 回顾 回顾SPF思想 思想 通过交换链路状态, 通过交换链路状态 , 让 AS中的每个路由器都有一 中的每个路由器都有一 张该AS的网络拓扑结构图. 张该 的网络拓扑结构图. 的网络拓扑结构图 节点:路由器;边:网络. 节点:路由器; 网络. 使用Dijkstra算法求最短路径 , 计算该路由器到其 算法求最短路径, 使用 算法求最短路径 它目的站的最短路径,然后更新路由表. 它目的站的最短路径,然后更新路由表. (1)优点 ) 每个路由器使用相同的原始数据. ① 每个路由器使用相同的原始数据. 适合大规模的AS. ② 适合大规模的 .
10.2 OSPF的发展 的发展 (1)1989.10 ,OSPF1(RFC1131) ) ( ) (2)1998.4, OSPF2(RFC2328) ) , ( ) (3)1999.12,OSPF3(RFC2740,用于 ) , ( ,用于IPv6) ) 10.3 OSPF的特点 的特点 ( 1) 基于 ) 基于SPF, 适用于大规模网络 , 最多可支持数 , 适用于大规模网络, 千个路由器 (2)支持 )支持VLSM和CIDR 和 (3)具有较强的健壮性和可扩展性 ) (4)不产生路由循环 ) (5)收敛速度快 ) (6)提供服务类型路由和负载均衡功能 ) (8)提供安全性 )
8 开放最短路径优先协议(OSPFv2

LSAck
afadjfjorqpoeru 39547439070713
感谢你的链路状态摘要信息! 感谢你的链路状态摘要信息!
Loading 状态
LSAck
LSR
我需要对网络172.16.6.0/24的完整描述条目 的完整描述条目 我需要对网络
afadjfjorqpoeru 39547439070713
LSAck
感谢你的链路状态摘要信息! 感谢你的链路状态摘要信息!
LSAck
探寻路由信息
DR E0 172.16.5.1
afadjfjorqpoeru 39547439070713
E0 172.16.5.3
afadjfjorqpoeru 39547439070713
LSAck
afadjfjorqpoeru 39547439070713
如果使用router-id命令手工配置Router ID,就使用 OSPF路由器使用Hello数据包通告它的路由器ID来建立和邻居的关系. Router ID; 如果没有手工配置Router ID,路由器选取它所有环回 (loopback)接口上数值最高的IP地址; 如果路由器没有配置IP地址的loopback接口,选取它所 有的物理接口上数值最高的IP地址; 用作路由器ID的接口不一定非要运行OSPF协议.
1 2 3 C D B A 2 3 D 1 C B
A
2
1
B
5
C
3
RTD (一)网络拓扑结构 一 网络拓扑结构
A 2 1 C 3 D B A
D
(三)由链路状态数据 三 由链路状态数据 库得到的带权有向图
A 2 3 D
18
1 C
B
(四)每台路由器分别以自己为跟节点计算最小生成树 四 每台路由器分别以自己为跟节点性
OSPF协议详解

OSPF协议详解OSPF(Open Shortest Path First)是一种开放式的最短路径优先(SPF)路由协议,它用于在IP网络中确定最佳转发路径。
在本文中,我们将详细介绍OSPF的工作原理、优点、协议特点以及配置方法。
1.工作原理:OSPF使用了链路状态路由算法,这种算法将网络上的每个路由器都视为一个节点(或称为“LSDB数据库中的顶点”),并通过链路状态广播(LSA)协议来交换链路信息。
每个路由器都会维护一个属于自己的图,这个图描述了整个网络的拓扑结构。
当一个链路状态发生变化时(如链路故障或新增链路),路由器会发送链路状态通告(LSA)消息给所有邻居路由器,以便更新其拓扑图。
接收到这些消息的路由器将更新自己的拓扑图,并重新计算到达目标网络的最短路径。
2.优点:(1)快速收敛:OSPF使用链路状态广播信息,并且每个路由器都维护了一个图,这使得当网络发生变化时,只需更新那些受影响的链路即可,从而加快了网络的收敛速度。
(2)支持多种网络类型:OSPF可以用于各种类型的网络,如以太网、FDDI(光纤分布式数据接口)、点对点链路和虚拟链路等。
(3)可划分区域:OSPF网络可以划分成不同的区域,每个区域都有独立的LSDB数据库和SPF计算。
这种分层结构使得OSPF对大型网络的扩展更加容易。
(4)通过区域间的路由聚合减少链路状态交换的开销。
(5)支持VLSM(可变长度子网掩码):OSPF支持VLSM,可以根据不同的子网掩码长度进行路由。
3.协议特点:(1)基于链路状态:OSPF使用链路状态来计算最佳路径,而不是基于距离向量,这使得OSPF在选择最佳路径时更加准确。
(2)通过区域间的路由聚合减少链路状态交换的开销。
(3)支持分层结构:OSPF支持网络的分层结构,将大型网络划分为多个区域,每个区域都有独立的LSDB数据库和SPF计算。
(4)使用多种类型的LSA:OSPF定义了几种不同的LSA类型(如类型1、类型2、类型3),用于交换链路状态信息和计算最佳路径。
开放最短路径优先协议(OSPFv2)

3. Router ID(ospf 区域内路由器的唯一标示) Ospf 路由器 ID 的三种选择方法: 使用命令 router-id 来配置路由器的 router id 取 loopback 口中的最大值 如果以上两项都没有,取物理口中的最大值(无论此接口有没有运行 ospf 协议) 注:在实际环境中建议选用 loopback 口作为路由器 id 的选择方法。
15. Ospf cost Ospf 使用接口的带宽计算 metric,以 10 Mbit/s 的接口为例: 将 10 Mbit/s 换算成 bit,为 10 000 000,然后用 100000000 除以带宽,得到 100000000/10 000 000=10,及在 ospf 中,10Mbit/s 链路的 metric 为 10.
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验二开放式最短路径优先协议OSPF 网工1301班吴兴龙 201326810917【实验目的】1. 掌握OSPF的报文格式2. 掌握OSPF的工作过程3.了解常见的LSA的结构及LSDB的结构【实验学时】建议4学时【实验环境配置】采用网络结构三【实验原理】一. OSPF的报文格式二. OSPF的工作过程三. OSPF链路状态公告类型路由器链路LSA:用来通知路由器的所有链路。
网络链路LSA:用来宣布连接到某个网络上的链路。
汇总链路到网络LSA:用来宣布在这个区域以外的其他网络的存在。
汇总链路到AS边界路由器LSA:用来宣布到AS边界路由器的路由。
外部链路LSA:用来宣布在AS外部的所有网络。
【实验步骤】练习一:分析OSPF报文,理解OSPF工作过程1.主机C、D启动协议分析器开始捕获数据,并设置过滤条件(提取OSPF协议)。
2.主机B和主机E启动OSPF协议并添加新接口:a.主机B启动OSPF协议(在命令行方式下,输入“ospf_config routerid1.1.1.1”);b.主机E启动OSPF协议(在命令行方式下,输入“ospf_config routerid2.2.2.2”);c. 添加主机B的接口:添加IP 为192.168.0.2 的接口:在命令行方式下输入“ospf_configinterface"192.168.0.2的接口名"0.0.0.0192.168.0.2255.255.255.0”;d. 添加主机E的接口:添加IP 为192.168.0.1 的接口:在命令行方式下输入“ospf_configinterface"192.168.0.1的接口名"0.0.0.0192.168.0.1255.255.255.0”;3.观察主机B、E的OSPF的相关信息,宏观了解该路由器的基本信息:a. 在命令行方式下,通过输入“ospf_configshowarea”察看区域信息。
b. 在命令行方式下,通过输入“ospf_configshowlsdb”察看链路状态数据库信息。
c. 在命令行方式下,通过输入“ospf_configshowneighbor”察看邻居信息。
4. 观察路由表,如果出现了OSPF路由,则路由表达到稳定态,表明两台路由器成功建立邻居关系并交换路由信息。
.在命令行下使用“netshroutingipshowrtmroutes”,分析主机B和主机E的路由表条目。
主机B的路由表中除了具有172.16.0.0和192.168.0.0网络信息外,还具有172.16.1.0网络信息。
主机E的路由表中除了具有172.16.1.0和192.168.0.0网络信息外,还具有172.16.0.0网络信息。
5.察看主机C、D捕获的数据,分析OSPF的5种协议报文,理解OSPF的工作过程:a.Hello报文在会话分析中找到“192.168.0.2—224.0.0.5” 会话,观察该会话的第一个报文B_PKT1,填写表格;找出第一个含有字段“邻站IP 地址”的报文B_PKT2,填写表格;找出第一个字段“指定路由器IP地址”的值不为0.0.0.0报文B_PKT3,填写表格;在会话分析中找到“192.168.0.1—224.0.0.5”会话,观察该会话的第一个报文E_PKT1,填写表格;找出第一个含有字段“邻站IP 地址”的报文E_PKT2,填写表格;找出第一个字段“指定路由器IP地址”的值不为0.0.0.0报文E_PKT3,填写表格;1.Hello报文的作用是什么?发现及维持邻居关系,选举DR、BDR。
2.路由器间的邻接关系是怎样建立的?所谓“邻接关系”是指OSPF路由器以交换路由信息为目的,在所选择的相邻路由器之间建立的一种关系。
路由器首先发送拥有自身ID信息(Loopback端口或最大的IP地址)的Hello报文。
与之相邻的路由器如果收到这个Hello报文,就将这个报文内的ID信息加入到自己的Hello报文内。
如果路由器的某端口收到从其他路由器发送的含有自身ID信息的Hello报文,则它根据该端口所在网络类型确定是否可以建立邻接关系。
3.指定路由器(DR)、备份指定路由器(BDR)是怎样选举出来的?不同类型的网络选举DR和BDR的方式不同。
MultiAccess网络支持多个路由器,在这种状况下,OSPF需要建立起作为链路状态和LSA更新的中心节点。
选举利用Hello报文内的ID和优先权字段值来确定。
优先权字段值大小从0到255,优先权值最高的路由器成为DR。
如果优先权值大小一样,则ID值最高的路由器选举为DR,优先权值次高的路由器选举为BDR。
优先权值和ID值都可以直接设置。
b.Database Description报文逐个观察Database Description报文,注意字段“初始化标识”、“更多标识”、“主/从位”、“报文序号”的变化情况。
1.Database Description报文的作用是什么?描述本地LSDB的情况。
2.路由器间的主从关系是怎样确定的?Router ID大的为master,小的为servant,Seq只能由master增加。
3.OSPF是通过什么方式确保数据的正确传输?通过隐式确认(不单独发送确认报文,在正常的数据交互报文中包含确认信息)的方式。
c.Link State Request报文观察字段“链路状态类型”、“链路状态ID”、“发送通过的路由器”的值。
1.Link State Request报文的作用是什么?向对端请求本端没有或对端更新的LSA。
d.Link State Update报文观察该报文各字段的值及LSA信息。
1.Link State Update报文的作用是什么?向对方更新LSA。
2.该报文是怎样描述其他路由器信息的?通过各个LSA的信息描述的。
e.Link State Acknowledge报文观察该报文各字段的值及LSA信息。
1.Link State Acknowledge 报文的作用是什么?收到LSU报文后,进行确认。
6. 结合上面对报文的分析结果,绘制OSPF工作过程示意图。
7.主机B和主机E命令行下输入“recover_config”命令,停止OSPF协议。
练习二:分析LSA、LSDB,理解LSA的作用1.主机A、C、D、F启动协议分析器进行数据捕获并设置过滤条件(提取OSPF协议)。
2.主机B、E启动OSPF协议、添加接口并进行区域划分(主机B为区域0和区域1的边界路由器,主机E为区域1内的路由器):a.主机B、E启动OSPF协议:主机B在命令行方式下,输入“ospf_configrouterid2.2.2.2”;主机E在命令行方式下,输入“ospf_configrouterid3.3.3.3”;b. 进行区域划分:主机B在命令行方式下,输入“ospf_configarea0.0.0.0172.16.0.0255.255.255.0”、“ospf_configarea1.1.1.1192.168.0.0255.255.255.0”;主机E在命令行方式下,输入“ospf_configarea1.1.1.1192.168.0.0255.255.255.0”、“ospf_config area 1.1.1.1 172.16.1.0255.255.255.0”;c. 添加接口:添加主机B的接口:添加IP为172.16.0.1的接口:在命令行方式下输入“ospf_config interface "172.16.0.1 的接口名" 0.0.0.0 172.16.0.1255.255.255.0”;添加IP为192.168.0.2的接口:在命令行方式下输入“ospf_config interface"192.168.0.2 的接口名" 1.1.1.1 192.168.0.2255.255.255.0”;添加主机E的接口:添加IP为192.168.0.1的接口:在命令行方式下输入“ospf_config interface"192.168.0.1的接口名"1.1.1.1192.168.0.1255.255.255.0”;添加IP为172.16.1.1的接口:在命令行方式下输入“ospf_configinterface"172.16.1.1的接口名" 1.1.1.1 172.16.1.1255.255.255.0”;3.察看捕获到的结果,在链路状态(LSA)类型为1、2、3的报文中任取一个,分析这些链路状态的结构及作用,填写下表:数据库信息,验证对报文的分析的结果。
5.主机B和主机E命令行下输入“recover_config”命令,停止OSPF协议。
【思考问题】1.OSPF使用IP,这样做有何优点?在DatabaseDescription报文中,OSPF是通过什么方式确保数据的正确传输?OSPF使用自己的规则保证DD报文的可靠传输,OSPF对于其它报文的可靠性不做特殊要求,因此不必使用TCP等协议,从而增加了性能。
在使用OSPF进行通信的两台路由器上,在DD报文中首先通过选举产生“主/从”路由器,后继报文使用“主”路由器提供的报文序号开始标识每一个报文,“主”路由器负责更新报文序号(顺次加1),“从”路由器无权更新报文序号(参见实验原理中“OSPF的工作过程”)。
OSPF是通过这种方式确保数据的正确传输。
2. 为什么OSPF报文比RIP报文传播得更快?更新不会感到不方便。
然而,路由器和计算机以比人快得多的速度运行。
不得不等上3 0秒进行一次更新才会有很明显的不利结果。
比仅仅等上3 0秒进行一次更新更具破坏性的却是不得不等上1 8 0秒来作废一条路由。
而这只是一台路由器开始进行收敛所需的时间量。
依赖于互联的路由器个数及它们的拓扑结构,可能需要重复更新才能完全收敛于新拓扑。
R I P路由器收敛速度慢会创造许多机会使得无效路由仍被错误地作为有效路由进行广播。
显然,这样会降低网络性能。