计算机网络理论知识:OSPF协议

目录

 

一、链路状态路由算法

二、OSPF协议(open shortest path first)

1、将网络变为图

2、OSPF协议的详细过程

3、OSPF的开销

4、路由器ID:OSPF采用路由器ID(RID)标识每一个路由器

5、指定路由器

6、LSA定时器

7、OSPF分组格式

8、特点


一、链路状态路由算法

利用最短路径算法求出一个节点到所有其他节点的最短路径;

利用这些最短路径上的下一个节点作为下一跳得到源节点的转发表;

链路状态指的是:一个节点向相邻节点发出的有向边及其开销。

二、OSPF协议(open shortest path first)

OSPF协议是一种采用链路状态路由算法的内部网关协议:(把网络变为图然后利用最短路径算法得到路由表)

  • 周期性的收集链路状态并扩散给AS中的所有路由器(AS是什么
  • 用收到的链路状态建立整个AS的拓扑图;
  • 利用迪杰斯特拉算法计算到AS表中所有网络的最短路径;
  • 利用这些路径上的下一跳建立路由表

1、将网络变为图

  • 中转网(transit network):N1,负责中转数据包;
  • 末端网(stub network):N2,不转发中转数据流,直接将数据发给主机(环回网络也属于末端网)
  • 链路状态通告(Link State Advertisement):指明路由器或网络的链路状态;路由器或网络的LSA,指明了从该路由器或网络出发到其直连的下一个网络或者路由器的开销(网络只有中转网有LSA)
  • 对于每个中转网,要选定一个直连路由器作为该中转网的指定路由器(designated router,DR)。该中转网的所有路由器都只将信息发送给DR,由DR将网络链路状态发送出去,即由DR产生该网络的LSA然后转发出去;
  • 一个OSPF路由器如何知道它的一个直连网是中转网?:若这个网为多路访问网络且在这个网络中有该路由器的OSPF邻居,则该直连网为中转网。
  • 路由器的链路状态通告,即router LSA,包含了该路由器直连的网络的信息以及该路由器直连的其他路由器的信息
  • 中转网到其连接的路由器的开销(metric)为0。

上面的网络等同于该图

N3是点到点网络,如果该网络没有配置IP地址,则不会出现节点N3,而可以直接用两个路由器相连的端口进行数据传输;

所有的LSA构成了链路状态数据库——即整个网络的邻接矩阵,实现了从网络到图的转变;

上题说明只有中转网才有network LSA。

2、OSPF协议的详细过程

  • 发现邻居:路由器每10秒向邻居发送Hello分组,如果40秒都收不到邻居发来的Hello分组,则把邻居的链路标记为失效。多路访问网络采用多播(244.0.0.5)发送Hello分组,一个Hello分组包含优先权、已知的邻居、DR和BDR(下面会讲到);
  • 完全相邻:在发现邻居之后路由器与邻居交换链路状态数据库中的LSA,请求得到更新的或者没有的LSA。在与邻居的链路状态数据库变得完全一样时,它们就处于完全相邻状态(fully adjacency);
  • 生成LSA:每30分钟或链路变化时每个路由器会生成router LSA,中转网的DR会生成network LSA;
  • 扩散LSA:产生的LSA立即封装为Update分组,被可靠地扩散出去(需要确认)。每次产生的LSA序号会加1,序号越大表示越新。若收到多个LSA,则由发出此LSA的路由器ID、链路状态和序列号区分。通过序号也可以防止扩散形成回路(不接收已经收过的序号);
  • 收集LSA:路由器收集到LSA后用新的LSA替换链路状态数据库中旧的LSA,如果一个LSA在60分钟没有被更新则将其从链路状态数据库中移除;
  • 计算最短路径:链路状态数据库被改变时使用迪杰斯特拉算法计算到所有网络的最短路径
  • 建立路由表:利用得到的最短路径产生路由表

3、OSPF的开销

开销根据reference-bandwidth决定,必须为大于0的整数。默认值为100决定了100M带宽的开销为1,其他的按比例计算,大于100M的也为1;

4、路由器ID:OSPF采用路由器ID(RID)标识每一个路由器

  • 直接配置RID;
  • 使用活动环回接口中最大的IP地址作为RID;
  • 使用活动物理接口中最大的IP地址作为RID;

5、指定路由器

在多路访问网络中,任意两台路由器之间要交换路由信息。如果有N台路由器,则需要建立N(N-1)/2个邻接关系,这导致任意一台路由器的路由变化都会导致多次路由传递,浪费了带宽资源,所以OSPF协议定义了指定路由器DR,所有路由器都只是将信息发送给DR,再由DR将网络链路状态发送出去。如果DR由于某种故障而失效,则网络中的路由器必须重新选举DR,再与新的DR同步,这需要比较长的时间,所以OSPF又提出了BDR(备份指定路由器),在选举DR的同时也选举BDR,当DR失效后BDR可以立即代替DR,然后再重新选举BDR。选举BDR的过程不影响路由器的计算。DR和BDR之外的路由器称为DR Other,它们之间不再建立邻接关系,不再直接交换任何路由信息。(选举方式:优先权高,RID大)

因此,收到一个LSA后一个多路访问网络中的OSPF路由器将把它首先多播给DR和BDR,然后DR再把它多播给所有OSPF路由器

6、LSA定时器

  • 每10秒向邻居发送依次Hello,40秒没有收到邻居的Hello就认为邻居失效;失效的LSA会被扩散到整个AS,令AS的所有路由器把该LSA从链路状态数据库中移除。
  • 每30分钟会产生新的LSA,最小间隔为5秒。【如果接触不良,路由器会一会接进网络一会断开,这样一秒内就会有多次变化,就会一直产生新的LSA,为了防止这种情况,至少要5秒才能产生新的LSA】

7、OSPF分组格式

  • 协议号89;目的地址为224.0.0.5或者224.0.0.6(多播)
  • 发出通告路由器ID为产生本分组的路由器ID;
  • Router LSA的链路状态ID与发出通告路由器相同,Network LSA的链路状态ID为网络号。

8、特点

  • 所有的OSPF消息都要认证,防止恶意入侵;
  • 路由表中允许多个相同开销的路径存在(RIP只允许一条),可以实现负载均衡;

 

 

 

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值