ospf概述

一、背景
OSPF是由 IETFIGP工作组为 IP网开发的路由协议。该工作组成立于 1998年,专门设计用于因特网的基于最短路径优先( SPF)算法的 IGP。与 IGRP类似, OSPF创建的原因是到了八十年代中期, RIP不能服务于大型、异构网络的缺陷愈发明显。本文介绍 OSPF的路由环境、基础的路由算法和基本的协议组件。
OSPF是由多个研究结果发展而来的,包括 1978年为 ARPANET开发的 Bolt,Beranek,Newman(BBN)SPF算法, Dr. Radia Perlman对路由信息容错性广播的研究( 1988), BBN在区域路由的工作( 1986)和 OSIIS-IS路由协议的早期版本。
OSPF 有两个主要的特性。首先该协议是开放的,即其规范是公开的,公布的OSPF规范是RFC1247。另一个基本的特性是OSPF基于SPF算法,该算法也称为Dijkstra算法,即以创建该算法的人来命名。
OSPF是个链接状态路由协议,在同一层的区域内与其它所有路由器交换链接状态公告 (LSA)信息。 OSPFLSA中包含连接的接口、使用的 metric及其它的变量信息。 OSPF路由器积累链接状态信息,并使用 SPF算法来计算到各节点的最短路径。
作为链接状态路由协议, OSPFRIPIGRP这些距离向量路由协议是不同的。使用距离向量算法的路由器的工作模式是在路由更新信息中把路由表全部或部分发送给其相邻的路由器。
二、路由层次
RIP不同, OSPF的工作是有层次的,其层次中最大的实体是自治系统 (AS),即遵循共同的路由策略统一管理下的网络群。虽然 OSPF可以与其它 AS中的路由器交换路由信息,但它们是一种 AS内部(内部网关)路由协议。
一个 AS可以分为多个区间,即一组连续的网络和相连的主机。拥有多个接口的路由器可以加入多个区间,这些路由器称为区间边缘路由器,分别为每个区间保存其拓扑数据库。拓扑数据库实际上是与路由器有关联的网络的总图,包含从同一区间所有路由器收到的 LSA的集合。因为同一区间内的路由器共享相同的信息,所以它们具有相同的拓扑数据库。(术语域 (domain)有时用于描述含有相同拓扑数据库的路由器组成的网络,通常与 AS可互换。)
区间的划分产生了两种不同类型的 OSPF路由,区别在于源和目的是在相同的还是不同的区间,分别为区间内路由和跨区间路由。
OSPF主干负责在区间之间分发路由信息,包含所有的区间边缘路由器、非全部属于某区间的网络及其相连的路由器。下图是一个分为若干区间的 OSPF自治系统的例子。
上图中,路由器 456101112构成了主干。如果区间 3中的主机 H1要给区间 2中的主机 H2发送数据,则先发给路由器 13,它转发给路由器 12,再转给路由器 11,路由器 11再沿主干转发给路由器 10,然后通过两个区间内路由器( 97)到达主机 H2
主干本身也是个 OSPF区间,所以所有的主干路由器与其它区间路由器一样,使用相同的过程和算法来维护主干内的路由信息,主干拓扑对所有的跨区间路由器都是可见的。
可以以非连续主干的形式来定义区间,这时,主干的连接必须通过虚拟链接来保持。虚拟链接可以配置在任意共享非主干区间链接的路由器对之间,就象它们有直接链接一样工作。
运行 OSPFAS边缘路由器通过外部网关协议,如 EGPBGP,或通过配置信息来学习外部路由。
三、SPF算法
最短路径优先( SPF)路由算法是 OSPF的基础。当 SPF路由器加点后,它就初始化路由协议数据结构,然后等待下层协议关于接口已可用的通知信息。当路由器确认接口已准备好,就用 OSPF Hello协议来获取邻居信息,即具有在共同的网络上接口的路由器。路由器向邻居发送 Hello包并接收它们的 Hello包。除了帮助学习邻居外, Hello包也有 keep-alive的功能。
在多重访问网络(支持多于两个路由器的网络)中, Hello协议选出一个 指派路由器 和一个备份指派路由器。指派路由器负责为整个多重访问网络生成 LSA,它可以减少网络通信量和拓扑数据库的大小。
当两个相邻路由器的链接状态数据库同步后,就称为 邻接 。在多重访问网络中,指派路由器决定哪些路由器应该相邻接,拓扑数据库在邻接路由器对间进行同步。邻接控制路由协议分组的分发,只在邻接点间交换。
每个路由器周期性地发送 LSA,提供其邻接点的信息或当其状态改变时通知其它路由器。通过对已建立的邻接关系和链接状态进行比较,失效的路由器可以很快被检测出来,网络拓扑相应地更动。从 LSA生成的拓扑数据库中,每个路由器计算最短路径树,以自己为根。这个最短路径树就生成了路由表。
四、分组格式
所有的 OSPF分组均有 24字节的头,如下图:
其中各域为:
版本号 --标识使用的 OSPF版本。
类型 --标识 OSPF分组类型,为下列类型之一:
--Hello:建立和维持邻居关系。
--
数据库描述:描述拓扑数据库内容,此类信息在初始化邻接关系时交换。
--
链接状态请求:从相邻路由器发来的拓扑数据库请求。此类信息在路由器通过检查数据库描述分组发现其部分拓扑数据库过期后发送。
--
链接状态更新:对链接状态请求分组的响应,也用于通常的 LSA散发。单个链接状态更新分组中可以包含多个 LSA
--
链接状态确认:确认链接状态更新分组。
分组长度 --指示包括 OSPF头在内的分组长度,以字节计。
路由器 ID--标识分组来源。
区间 ID--标识分组所属的区间。所有的 OSPF分组都与某一个区间相关联。
校验码 --对整个分组的内容检查传输中是否发生损坏。
认证类型 --所有的 OSPF协议交换均被认证。认证类型可以在每区间的基础上配置。
认证 --包含认证信息。
数据 --包含封装的上层信息。
五、附加特性
OSPF的附加特性包括等价、多路径路由和基于上层服务类型( TOS-type of service)请求的路由。基于 TOS的路由支持可以指定特定服务类型的上层协议。例如,应用程序可能指定某些数据为紧急的,如果 OSPF有高优先级的链接,就可用于传输紧急数据。
OSPF支持一个或多个 metric。如果只用一个 metric,则为任意的,且不支持 TOS。如果使用多于一个 metric,通过对由三个 IP TOS位(延迟、吞吐量和可靠性)生成的八种组合各使用独立的 metric(因此也是独立的路由表)可以支持 TOS。例如,如果 IP TOS位指示低延迟、低吞吐量和高可靠性, OSPF就基于此 TOS设计计算到所有目的的路由。
每个目的地址都含有 IP子网掩码,允许 VLSM(variable-length subnet mask)。通过 VLSMIP网可以分成各个不同大小的子网,这给了网管更大的网络管理的灵活性。
 
 
 

你可能感兴趣的:(网络协议,职场,休闲)