邻接(adjacency):为交换路由而在邻居间建立的关系,不是每对邻居都成都为邻接的。
连接状态传送(Link State Advertise):描述本地路由器或网络的数据单元 对路由器来说,它描述了路由器的接口状态和邻接状态,第一个连接状态传送会发送到整个路由领域,所有的连接状态传送组成了协议的连接状态数据库,这在全局范围内使用,缩写为LSA
连接状态数据库(Link State DataBase):所有连接状态传送组成了连接状态数据库.
Stub网络:只有一个接口与外部相连的网络,如一个PPP可视为一个stub网络
骨干区域(Backbone Area):所有区域边界路由器和它们之间的路由组成骨干区域.
自治系统外部路由(AS external route):指由非OSPF协议得到的路由,如BGP(边界网关协议),RIP(Routing Information Protocol),系统的静态配置路由等,系统的静态路由是由配置得到的,其他协议的路由是通过引入操作得到的,外部路由的指定是由用户决定的.
路由(route):指两节点之间的连通路径。
路由表(routing table):到每个目的地有路由,这样的表叫路由表。
基本概念:
OSPF把整个网络(Internet上的子网或其他类型的网)看成一个自治系统(AS)
每一个AS内若干个物理上相邻的路由器(Router),网络(Network)组成Area,这些Area内部一般是不相交的,它们划分了整个AS。
Rxx代表路由器,N*代表网络,
1.R1,R2,R3,R4,N1组成区域1,R3,R4是区域边界路由器(ABR)
2.R7,R8,R10,N2,N3组成区域2,R7,R10,R11是区域边界路由器(ABR)
3.R9.R11,R12,N4组成区域3,R11是区域边界路由器(ABR)
4.所有区域边节点(R3,R4,R7,R10,R11)及R5,R6共同组成了骨干区域,(backbone area)
5.Area1,Area2,Area3以及backbone area共同组成了一个自治系统(Autonomous System),R5是系统的边节点(ASBR)
OSPF协议的中心思想是在每一个区域上运行一个OSPF的副本,让我们以区域为基础进行阐述。
通过路由器间的路由信息交换,自治系统内部可以达到信息同步
LSDB(连接状态数据库)描述的网络拓扑同步。
LSDB由LSA(连接状态传送报文)得到,由于LSA的种类不同,可以把LSDB分成五类:
1.rtr_LSA 由区域内路由传送来的LSA.
2.net_LSA 由区域内子网络传送的LSA.
3.netsum_LSA 区域间传送描述网络的LSA.
4.asbrsum_LSA 区域间传送描述AS边节点的LSA.
5.ASE_LSA AS外部的LSA
LSA所描述的信息一般包括:
1.接口信息:接口ID,类型(LS_TYPE),状态(STATE)等
2.网络节点信息:目的地(destination),掩码(mask),所属区域,位置等
3.路由信息:下一跳(next hop,即路由下一步该去的顶点),权(metric),类型(route type)等
4.其他信息:时控,该节点收到的连接状态传送报文信息等
所有的LSA组成ROOT的LSDB,通过LSDB,每个节点可以用Dijkstra算法,求出最小树(Shortest Path Tree)通过最小树并改进系统路由表(routing table),路由表包含目的地(destination),下一跳(next hop),花费(metric)等.
出于安全性考虑,OSPF协议中还包含认证过程,路由器之间必须通过某个过程来认证它们之间的通信,即在OSPF报文中加入认证字。
1.4.OSPF协议与其它路由协议的比较
通用的路由协议除了OSPF,主要还有RIP路由协议(路由信息协议)等,将OSPF和RIP作一个大致的比较如下:
1. 网络结构不同:
RIP的拓扑是简单的“小”图,说它简单,是因为它没有系统内外,系统分区,边界的概念,它用的是不分类的路由;说它“小”,是因为它的每一个节点只能处理以自己为头的至多16个节点的链,路由以下一跳个数来描述,无法体现带宽和网络延迟,RIP适用于中小型网络。
OSPF可以适用于较大规模的网络,它把自治系统分为若干个区域,通过系统内外路由的不同处理,区域内和区域间路由的不同处理方法,引入摘要的概念,减少了网络数据量的传输,OSPF对应于RIP中的“距离”的概念,引入了“权”(metric)的概念,对于不同的网络连接可以人工指定或根据网络的带宽和网络延迟动态地计算花费,OSPF所能接受的最大的花费是65534即0XFFFF-1(区域内,区域间和自治系统外为16777214即0XFFFFFF-1),其缺省得花费是1,可以说OSPF的路由处理能力相当大,并且还把其他协议的路由或静态或核心路由作为自治系统外部路由引入,它的处理能力已经是相当完全了。
RIP不支持可变长度子网掩码(Variable Length Subnet Masks i.e. VLSM,RIP的新版本RIP2支持),OSPF支持VLSM。
2. 协议的运行有差异:
RIP运行时,首先向外广播请求报文,其他运行RIP的路由器收到请求报文后,马上把自己的路由表发送过来;在没有收到请求报文时,定期(30秒)广播自己的路由表,在180秒之内如果没有收到某个相邻路由器的路由表,就认为它DOWN掉了,把它从路由表中作废,120秒后清除,并广播自己新的路由表。
OSPF运行时,用HELLO报文建立连接,然后迅速建立邻接的关系,在建立了邻接关系路由器中发送路由信息;以后,是靠定期发送HELLO报文去维持连接,相对来说,HELLO报文数据量比RIP协议的路由表报文小得多,网络拥塞也少了,HELLO报文在广播网上10秒发送一次,在NBMA,PPP,虚连接上30秒发送一次,在一定时间(4倍于HELLO间隔)没有收到HELLO报文,认为对方“死“掉,从路由表中去掉它,在LSBD中给它置位为INFINITY,但并没有真正去掉,以备它再起时减少数据传输量,在它达到MaxAge(3600秒)时,真正去掉它。OSPF的路由表也重发,重发间隔是1800秒。
以上这些从另一方面说明了OSPF协议适用性广,RIP相对简单,适用于较小规模网络。
3. 使用情况不同:
一般说来(由统计数据得到,参看RFC 1245),OSPF占用的实际链路带宽比RIP少,因为它的路由表是有选择的广播(只在建立邻接关系的路由器间),OSPF使用的CUP时间比RIP少,因为OSPF达到平衡后的主要工作只是发HELLO报文,RIP是发送路由表,OSPF用的路由器的内存比RIP大,因为OSPF相对有一个大的路由表。RIP在网络上达到平衡用的时间比OSPF多,因为它往往要发送及处理一些无用的路由信息。