毕业论文-多区域OSPF在网络互联中的应用和分析—基于华为3Com路由器的调试
摘 要......................................................................... 1 第一章 网络互联概述............................................................ 2 1.1 网络互连的发展.............................................................. 2 1.2 OSPF协议的研究现状 ......................................................... 2 第二章 OSPF 简介................................................................ 3 2.1 OSPF概述 ................................................................... 3 2.2 OSPF的路由计算过程 ......................................................... 3 2.3 OSPF的相关基本概念 ......................................................... 4 2.4 OSPF的协议报文 ............................................................. 5 2.5 OSPF的LSA类型 ............................................................. 5 第三章 OSPF的基本配置 .......................................................... 7 3.1 配置Router ID .............................................................. 7 3.2 启动OSPF ................................................................... 7 3.3进入OSPF区域视图 ........................................................... 8 3.4 在指定网段使能OSPF ......................................................... 8 第四章 系统需求................................................................. 9 4.1 背景需求.................................................................... 9 4.2 网络拓扑图.................................................................. 9 4.3 配置步骤.................................................................... 9 4.4 实现结果................................................................... 11 结 束 语....................................................................... 14 致谢........................................................................... 14 参考文献....................................................................... 14
摘 要
OSPF是近年来出现的优秀的动态路由协议,它以协议标准化强,支持厂家多而得到广泛应用。OSPF(Open Shortest Path First)协议是一种非常重要的路由协议,它采用链路状态路由的算法,具有快速的收敛性、多重路径选择以及对流量的负载均衡分担等特点。
本文基于华为3COM(H3C)设备实现多区域OSPF进行研究和分析,以企业背景需求为对象进行案例分析。
关键词: H3C;OSPF;多区域
1
第一章 网络互联概述
1.1网络互联的发展
网络互联的起源要追溯到70年代中期,当时ARPA(Advanced Research Project Agency)为了实现异种网之间的互连与互通,大力资助网间网技术的研究开发,于1977 到1979年间推出了目前形式的TCP/IP 体系结构和协议规范。1969 年,ARPA 建立了著名的ARPANET,ARPANET是最早出现的计算机网络之一,现代计算机网络的许多概念和方法便来自ARPANET。到了1979 年.越来越多的研究开发人员投入到TCP/IP的研究开发之中。1980年前后.DARRA 开始将ARPANET上的所有机器转向TCP/IP协议,并以ARPANET 为主干建立INTERNET。
INTERNET 发展至今,已是目前国际上规模最大的计算机互联网。到1991 年底世界上己有26个国家的5 千多个网络连入INTERNET ,其中包含了数千个组织的30 万台主机,用户数以百万计。在中国,1996年前,使用INTERNET的用户寥寥无几,INTERNET 的研究和使用仅限于大的研究机构和少数的大学。但是,INTERNET发展到现在,没有听说过和从没有用过INTERNET的人已经几乎没有了,INTERNET己逐步进入平常百姓家。收发EMAIL,上网已经是大部分人每天的一项必须的生活内容。随着网络承载业务的增多,实时业务的加入,IP 电话,IP传真等业务的普及,INTERNET 将会得到更大的发展。
1.2 OSPF协议的研究现状
IETF(互联网工程任务组)为了满足建造越来越大的基于IP网络的需要,形成了一个工作组,专门用于开发开放式的、链路-状态路由协议,以便用在大型、异构的I P网络中。新的路由协议以已经取得一些成功的一系列私人的、和生产商相关的、最短路径优先( SPF)路由协议为基础,SPF在市场上广泛使用。
OSPF由IETF在20世纪80年代末期开发,OSPF是SPF类路由协议中的开放式版本。最初的OSPF规范体现在RFC-1131中。这个第1版( OSPF版本1)很快被进行了重大改进的版本所代替,这个新版本体现在RFC-1247文档中。RFC-1247 OSPF称为OSPF版本2是为了明确指出其在稳定性和功能性方面的实质性改进。这个OSPF版本有许多更新文档,每一个更新都是对开放标准的精心改进。目前使用的是版本2(RFC-2328)。
2
第二章 OSPF 简介
2.1 OSPF概述
OSPF 是Open Shortest Path First(开放最短路由优先协议)的缩写。它是IETF组织开发的一个基于链路状态的内部网关协议。目前使用的是版本2(RFC2328),其特性如下:
适应范围——支持各种规模的网络,最多可支持几百台路由器。
快速收敛——在网络的拓扑结构发生变化后立即发送更新报文,使这一变化在自治系统中同步。
无自环——由于 OSPF 根据收集到的链路状态用最短路径树算法计算路由,从算法本身保证了不会生成自环路由。
区域划分——允许自治系统的网络被划分成区域来管理,区域间传送的路由信息被进一步抽象,从而减少了占用的网络带宽。
等值路由——支持到同一目的地址的多条等值路由。
路由分级——使用 4 类不同的路由,按优先顺序来说分别是:区域内路由、区域间路由、第一类外部路由、第二类外部路由。
支持验证——支持基于接口的报文验证以保证路由计算的安全性。 组播发送——支持组播地址。
2.2 OSPF的路由计算过程
每个支持 OSPF 协议的路由器都维护着一份描述整个自治系统拓扑结构的链路状态数据库(Link State Database,简称为LSDB)。每台路由器根据自己周围的网络拓扑结构生成链路状态广播(Link State Advertisement,简称为LSA),通过相互之间发送协议报文将LSA 发送给网络中其它路由器。这样每台路由器都收到了其它路由器的LSA,所有的LSA 一起组成链路状态数据库。
由于 LSA 是对路由器周围网络拓扑结构的描述,那么LSDB 则是对整个网络的拓扑结构的描述。路由器很容易将LSDB 转换成一张带权的有向图,这张图便是对整个网络拓扑结构的真实反映。各个路由器得到的是一张完全相同的图。
每台路由器都使用 SPF 算法计算出一棵以自己为根的最短路径树,这棵树给出了到自治系统中各节点的路由,外部路由信息为叶子节点,外部路由可由广播它的路由器进行标记以记录关于自治系统的额外信息。各个路由器各自得到的路由表是不同的。
此外,为使每台路由器能将本地状态信息(如可用接口信息、可达邻居信息等)广播到整个自治系统中,在路由器之间要建立多个邻接关系,这使得任何一台路由器的路由变化都会导致多次传递,既没有必要,也浪费了宝贵的带宽资源。为解决这一问题,OSPF 协议定义了“指定路由器”(DR),所有路由器都只将信息发送给DR,由DR 将网络链路状态广播出去。这样就
3
减少了多址访问网络上各路由器之间邻接关系的数量。OSPF 协议支持基于接口的报文验证以保证路由计算的安全性;并使用IP 多播方式发送和接收报文。
2.3 OSPF的相关基本概念
1. Router ID
一台路由器如果要运行OSPF 协议,必须存在Router ID。若系统当前配置了 Loopback 接口IP 地址,则选择最后配置的Loopback 接口的IP 地址作为router id;若系统当前没有配置 Loopback 接口,则选取第一个配置并UP 的物理接口的IP 地址作为router id。
一般建议选择 loopback 接口的IP 地址作为本机ID 号,因为该接口永远UP(除非手工shutdown)。
2. DR 和BDR
DR(Designated Router,指定路由器):在广播网络或者多点访问网络中,为使每台路由器能将本地状态信息广播到整个自治系统中,在路由器之间要建立多个邻居关系,但这使得任何一台路由器的路由变化都会导致多次传递,浪费了宝贵的带宽资源。为解决这一问题,OSPF 协议定义了DR,所有路由器都只将信息发送给DR,由DR 将网络链路状态广播出去,除DR/BDR 外的路由器(称为DR Other)之间将不再建立邻居关系,也不再交换任何路由信息。哪一台路由器会成为本网段内的 DR 并不是人为指定的,而是由本网段中所有的路由器共同选举出来的。
BDR(Backup Designated Router,备份指定路由器):如果DR 由于某种故障而失效,这时必须重新选举DR,并与之同步。这需要较长的时间,在这段时间内,路由计算是不正确的。为了能够缩短这个过程,OSPF 提出了BDR的概念。BDR实际上是对DR的一个备份,在选举DR的同时也选举出BDR,BDR也和本网段内的所有路由器建立邻接关系并交换路由信息。当DR失效后,BDR会立即成为DR,并重新选举BDR。
3. 区域(Area)
随着网络规模日益扩大,当一个网络中的OSPF 路由器数量非常多时,会导致LSDB变得很庞大,占用大量存储空间,并消耗很多CPU 资源来进行SPF 计算。并且,网络规模增大后,拓扑结构发生变化的概率也会增大,导致大量的OSPF 协议报文在网络中传递,降低网络的带宽利用率。
OSPF 协议将自治系统划分成多个区域(Area)来解决上述问题。区域在逻辑上将路由器划分为不同的组。不同的区域以区域号(Area ID)标识,其中一个最重要的区域是区域0,也称为骨干区域(backbone area)。
骨干区域完成非骨干区域之间的路由信息交换,它必须是连续的,对于物理上不连续的区域,需要配置虚连接(virtual links)来保持骨干区域在逻辑上的连续性。连接骨干区域和非骨干区域的路由器称作区域边界路由器(Area Border Router,简称为ABR)。
OSPF 中还有一类自治系统边界路由器(Autonomous System Boundary Router,简称为ASBR),实际上,这里的AS 并不是严格意义的自治系统,连接OSPF 路由域(routing domain)和其它路由协议域的路由器都是ASBR,可以认为ASBR是引入OSPF 外部路由信息的路由器。
4. 路由聚合
AS 被划分成不同的区域,每一个区域通过OSPF 边界路由器(ABR)相连,区域间可以通
4
过路由汇聚来减少路由信息,减小路由表的规模,提高路由器的运算速度。ABR 在计算出一个区域的区域内路由之后,查询路由表,将其中每一条OSPF 路由封装成一条LSA 发送到区域之外。
2.4 OSPF的协议报文
OSPF 有五种报文类型:
HELLO 报文(Hello Packet): 最常用的一种报文,周期性的发送给本路由器的邻居。内容包括一些定时器的数值、DR、BDR 以及自己已知的邻居。
DD 报文(Database Description Packet):两台路由器进行数据库同步时,用 DD 报文来描述自己的LSDB,内容包括LSDB中每一条LSA 的摘要(摘要是指LSA 的HEAD,通过该HEAD 可以唯一标识一条LSA)。这样做是为了减少路由器之间传递信息的量,因为LSA 的HEAD 只占一条LSA 的整个数据量的一小部分,根据HEAD,对端路由器就可以判断出是否已有这条LSA。
LSR 报文(Link State Request Packet):两台路由器互相交换 DD 报文之后,知道对端的路由器有哪些LSA 是本地的LSDB所缺少的,这时需要发送LSR 报文向对方请求所需的LSA。内容包括所需要的LSA的摘要。
LSU 报文(Link State Update Packet):用来向对端路由器发送所需要的 LSA,内容是多条LSA(全部内容)的集合。
LSAck 报文(Link State Acknowledgment Packet)用来对接收到的 LSU 报文进行确认。内容是需要确认的LSA 的HEAD(一个报文可对多个LSA 进行确认)。
2.5 OSPF的LSA类型
1. 五类基本的LSA
链路状态广播报文LSA 是OSPF 协议计算和维护路由信息的主要来源。在RFC2328 中定义了五类LSA,描述如下:
Router-LSAs:第一类LSA(Type-1),由每个路由器生成,描述本路由器的链路状态和花费,只在路由器所处区域内传播。
Network-LSAs:第二类LSA(Type-2),由广播网络和NBMA 网络的DR 生成,描述本网段的链路状态,只在DR 所处区域内传播。
Summary-LSAs:包含第三类LSA 和第四类LSA(Type-3,Type-4),由区域边界路由器ABR 生成, 在与该LSA 相关的区域内传播。每一条Summary-LSA 描述一条到达本自治系统的、其它区域的某一目的地的路由(即区域间路由:inter-area route)。Type-3 Summary-LSAs 描述去往网络的路由(目的地为网段),Type-4 Summary-LSAs 描述去往自治系统边界路由器 ASBR 的路由。
AS-external-LSAs:第五类LSA(Type-5),由自治系统边界路由器ASBR生成,描述到达其它AS 的路由,传播到整个AS(Stub 区域除外)。AS 的缺省路由也可以用AS-external-LSAs 来描述。
2. 第七类LSA
在RFC1587(OSPF NSSA Option)中增加了一类新的LSA:NSSA LSAs,也称为Type-7 LSAs。
Type-7 LSAs 与Type-5 LSAs 主要有以下两点区别:
5
Type-7 LSAs 在NSSA 区域(Not-So-Stubby Area)内产生和发布;但NSSA区域内不会产生或发布Type-5 LSAs。
Type-7 LSAs 只能在一个NSSA 内发布,当到达区域边界路由器ABR 时,由ABR 将Type-7 LSAs 转换成Type-5 LSAs 再发布,不直接发布到其它区域或骨干区域。
6
第三章 OSPF的基本配置
在各项配置中,必须先启动 OSPF、指定接口与区域号后,才能配置其它的功能特性。而配置与接口相关的功能特性不受 OSPF 是否使能的限制,在关闭OSPF后,原来与OSPF 相关的接口参数也同时失效。
3.1 配置Router ID
路由器的ID 是一个32 比特无符号整数,采用IP 地址形式,是一台路由器在自治系统中的唯一标识。路由器的ID 可以手工配置,如果没有配置ID 号,系统会从当前接口的IP 地址中自动选一个较小的IP 地址作为路由器的ID 号。手工配置路由器的ID 时,必须保证自治系统中任意两台路由器的ID 都不相同。通常的做法是将路由器的ID 配置为与该路由器某个接口的IP 地址一致,如图表1所示。
图表1
为保证 OSPF 运行的稳定性,在进行网络规划时,应确定路由器ID 的划分并手工配置。
3.2 启动OSPF
OSPF 支持多进程,一台路由器上启动的多个OSPF 进程之间由不同的进程号区分。 OSPF 进程号在启动OSPF 时进行设置,它只在本地有效,不影响与其它路由器之间的报文交换,如图表2所示。
图表2
缺省情况下,不运行 OSPF。 启用 OSPF 时,需要注意:
如果在启动 OSPF 时不指定进程号,将使用缺省的进程号1;关闭OSPF 时不指定进程号,
7
缺省关闭进程1。
在同一个区域中的进程号必须一致,否则会造成进程之间的隔离。 当在一台路由器上运行多个 OSPF 进程时,建议用户使用以上命令中的router-id 为不同进程指定不同的Router ID。
3.3进入OSPF区域视图
OSPF 协议将自治系统划分成不同的区域(Area),在逻辑上将路由器分为不同的组。在区域视图下可以进行区域相关配置,如图表3所示
图表3
区域ID可以采用十进制整数或IP 地址形式输入,但显示时使用IP地址形式。在配置同一区域内的OSPF路由器时,应注意:大多数配置数据都应该对区域统一考虑,否则可能会导致相邻路由器之间无法交换信息,甚至导致路由信息的阻塞或者产生路由环。
3.4 在指定网段使能OSPF
在系统视图下使用ospf 命令启动OSPF 后,还必须指定在哪个网段上应用OSPF,如图表4所示。
图表4
一台路由器可能同时属于不同的区域(这样的路由器称作ABR),但一个网段只能属于一个区域。
8
第四章 系统需求
4.1 背景需求
网络环境由4台H3C MSR 3610路由器,2台PC和若干网线组成。RouterB与RouterC通过串口相连,RouterA与RouterB通过以太网口相连,RouterC与RouterD通过以太网口相连;RouterA属于Area1,RouterD 属于Area2,RouterB 同时属于Area0 和Area1,RouterC同时属于Area0 和Area2。利用OSPF 协议使每个路由器学习到全网路由;最终Pc A和Pc B能够互访。
4.2 网络拓扑图
网络拓扑图
4.3 配置步骤
(1) 配置RouterA [RouterA]int e0/1
[RouterA-ethernet0/1]ip add 1.1.1.1 24 [RouterA-ethernet0/1]int e0/0
[RouterA-ethernet0/0]ip add 2.2.2.2 30 [RouterA]int loop 0
[RouterA-LoopBack0]ip add 10.0.0.1 32
9
[RouterA-LoopBack0]q
[RouterA]router id 10.0.0.1 [RouterA]ospf
[RouterA-ospf-1]area 1
[RouterA-ospf-1-area-0.0.0.1]net 1.1.1.0 0.0.0.255 [RouterA-ospf-1-area-0.0.0.1]net 2.2.2.2 0.0.0.3
(2) 配置RouterB [RouterB]int e0/0
[RouterB-ethernet0/0]ip add 2.2.2.1 30 [RouterB-ethernet0/0]int s0/0
[RouterB-serial0/0]ip add 3.3.3.1 30 [RouterB]int loop 0
[RouterB-LoopBack0]ip add 10.0.0.2 32 [RouterB-LoopBack0]q
[RouterB]router id 10.0.0.2 [RouterB]ospf
[RouterB-ospf-1]area 0
[RouterB-ospf-1-area-0.0.0.0]net 3.3.3.1 0.0.0.3 [RouterB-ospf-1-area-0.0.0.0]area 1
[RouterB-ospf-1-area-0.0.0.1]net 2.2.2.1 0.0.0.3
(3) 配置RouterC [RouterC]int e0/0
[RouterC-ethernet0/0]ip add 4.4.4.1 30 [RouterC-ethernet0/0]int s0/0
[RouterC-serial0/0]ip add 3.3.3.2 30 [RouterC]int loop 0
[RouterC-LoopBack0]ip add 10.0.0.3 32 [RouterC-LoopBack0]q
[RouterC]router id 10.0.0.3 [RouterC]ospf
[RouterC-ospf-1]area 0
[RouterC-ospf-1-area-0.0.0.0]net 3.3.3.2 0.0.0.3 [RouterC-ospf-1-area-0.0.0.0]area 2
[RouterC-ospf-1-area-0.0.0.2]net 4.4.4.1 0.0.0.3
(4) 配置RouterD [RouterD]int e0/1
[RouterD-ethernet0/1]ip add 5.5.5.1 24 [RouterD-ethernet0/1]int e0/0
[RouterD-ethernet0/0]ip add 4.4.4.2 30 [RouterD]int loop 0
[RouterD-LoopBack0]ip add 10.0.0.4 32
10
[RouterD-LoopBack0]q
[RouterD]router id 10.0.0.4 [RouterD]ospf
[RouterD-ospf-1]area 2
[RouterD-ospf-1-area-0.0.0.2]net 4.4.4.2 0.0.0.3 [RouterD-ospf-1-area-0.0.0.2]net 5.5.5.1 0.0.0.255
4.4 实现结果
图表1
从图表1的路由表可以看出,RouterA已经学习到了全网的路由。
图表2
从图表2的路由表可以看出,RouterB已经学习到了全网的路由。 11
图表3
从图表3的路由表可以看出,RouterC已经学习到了全网的路由。
图表4
从图表4的路由表可以看出,RouterD已经学习到了全网的路由。
从以上四个路由器的路由表中可以看出,四台设备已经全部学习到了路由,下面我们来测试一下它们的连通性,在RouterA 上带源地址ping 测试:
12
图表5
从图表5可以看出,得到1 网段到5 网段是通的,在RouterD 上带源地址ping 测试:
图表6
从图表6可以看出,得到5 网段到1 网段也是通的。说明PcA与PcB 之间是通的,达到了实验的目的。
13
结 束 语
本文介绍了OSPF路由协议的现状、优缺点及其工作原理;OSPF 是典型的链路状态型路由协议。它使用COST(开销)作为度量,根据拓扑表通过SPF算法获得以自己为根的到达目标的最优路径。它使用三张表:邻居表,拓扑表,路由表,通过这3张表,每个路由器都能独立的获得前往每个目标的路径,而不象距离矢量协议那样依靠邻居来发现路由。确保了路由的真实可靠。
致谢
本论文的研究工作是在导师的悉心关怀和精心指导下完成的。导师渊博的知识和深厚的专业素养帮我拓宽了研究问题的思路,提高了分析问题的能力。在此,向张韬老师致以最崇高的敬意和最诚挚的感谢!
最后,特别感谢辛勤培育我的母校-南京正德职业技术学院!
参考文献
[1]Richard Deal编著 张波 胡颖琼 译《CCNA 学习指南—Cisco Certified Network Associate》[M].北京:人民邮电出版社
[2]田原 编著《计算机导论》[M]北京:中国水利电出版社 [3]徐敬东 张建忠 编著《计算机网络》[M]北京:清华大学出版社
[4]杭州华三通信技术有限公司 编著《构建中小企业网络 V6.O》[M]杭州:杭州华三通信技术有限公司
[5]杭州华三通信技术有限公司 编著《构建企业级路由网络》[M]杭州:杭州华三通信技术有限司
14
因篇幅问题不能全部显示,请点此查看更多更全内容