首页 > 编程知识 正文

ospf基本原理,简述ospf工作原理

时间:2023-05-05 00:23:35 阅读:145211 作者:2587

OSPF :开放shortest path first链路状态路由协议

1 )路由信息的传递与路由器计算的分离

2 )基于SPF算法(最短路径)

3 )以“累计链接开销”为选择基准值

LinkState“链接状态”是指路由器接口的状态,ospf包含路由器所在接口的链接状态

1 )该接口的IP地址和掩码

2 )此接口的带宽

3 )连接此接口的邻居

ospf作为链路状态路由协议,不直接传递每个路由器的路由表,而是传递链路状态信息,每个路由器根据链路状态信息独立地计算路由表

OSPF工作流程: 1、邻居建设2、链路状态数据库同步3、最优路由计算

ospf的路由计算过程可以简单描述如下

1 )路由器之间发现并建立邻居关系

2 )每个路由器都能生存下来,向邻居传播链路状态信息,同时手机通过其他路由器的状态信息,完成链路状态数据库(lsdb )的同步

3 )每个路由器基于LSDB通过SPF算法计算以其自身为路由的SPT (短路径路由),并基于SPT计算去往每个邻居连接网络的最优路由,从而形成路由表。

ospf的基本工作原理

Router ID :用于唯一标识自主系统中运行ospf的路由器,每个运行ospf的路由器都有Router ID。

32位无符号整数,格式和ip地址格式相同

路由器id选举规则

1 )手动配置OSPF路由器的路由器id (通常建议手动配置) ) ) ) ) ) ) ) ) )。

2 )如果未手动配置路由器id,路由器将使用loopback接口的最大ip地址作为路由器id

3 )如果未配置loopback接口,路由器将使用物理接口的最大ip地址作为路由器id

注:重新配置OSPF路由器路由器后,可以重置OSPF进程以更新路由器id

发现并建立邻居——hello消息

光环信息的作用:发现邻居、建立邻居、维护邻居

状态含义:

1 ) Down )这表示邻居的初始状态,没有从邻居那里收到任何信息

2 ) Init )在这种状态下,路由器已经从邻居接收到问候消息,但其路由器id不在接收到的问候消息的邻居列表中,表明没有与邻居建立双向通信关系。

3 )2-way :在这种状态下,路由器确认在收到的Hello消息的邻居列表中存在自己的Router ID,可以进行双向通信

创建邻居的过程包括

RTA和RTB的路由器id分别为1.1.1.1和2.2.2.2。 当RTA启动ospf时,RTA发送第一个问候消息,该消息的邻居列表为空。 此时,状态为Down,RTB接收RTA的该问候消息,状态为Lint。

RTB发送Hello消息,该消息旁边的列表为空,RTA从RTB接收Hello消息,使状态为Init。

RTB向RTA发送邻居列表1.1.1.1的Hello消息,RTA从收到的Hello消息邻居列表中发现自己的路由器id,状态为2路。 RTA向RTB发送邻居列表2.2.2.2的Hello消息,RTB从收到的Hello消息邻居列表中发现自己的路由器id,状态为2路。

Hello消息的目标IP地址不是某个特定的单播地址,因为邻居都是未知的。 因为没有邻居,OSPF以组播的形式发送问候消息(目的地地址224.0.0.5 )。 对于不支持多播的网络,OSPF路由器如何发现邻居?

找邻居做—手动做

1 ) ospf支持通过单播方式建立邻居关系

2 )对于不支持多播的网络,可以通过手动配置实现邻居的发现和维护

链接状态信息链接信息主要有以下内容

链路的类型接口ip地址和连接到掩码链路的邻居路由器链路的带宽(开销)

以下是OSPF如何定义多个网络的说明

P2P网络连接有一对路由器,广播和多播数据包都可以传输。

P2P网络示例:通过点对点协议(PPP )链路连接的两台路由器网络。

广播型网络能够支持两个以上设备接入相同的共享链路,支持广播、多播消息的转发,是OSPF最常见的网络类型。

广播网络示例:通过以太网链路连接的路由器网络。

同时,由于一个广播型网络中存在多个设备,在建立邻居关系和同步链路信息方面,OSPF具有应对同一网络中多个设备的不良影响的特性。

与广播型网络不同,NBMA网络默认不支持广播和多播消息的传输。 在NBMA网络上

上, OSPF模拟在广播型网络上的操作,但是每个路由器的邻居需要手动配置。

BMA(non-broadcast multiple access)型网络的例子:通过全互连的帧中继链路相连 的路由器网络。

在现在的网络部署中,NBMA网络已经很少了。

 

将一个非广播网络看成是一组P2P网络,这样的非广播网络便成为了一个点到多点( P2MP)网络。在P2MP网络上,每个路由器的OSPF邻居可以使用反向地址解析协议( Inverse ARP)来发现。P2MP可以看作是多个P2P的集合,P2MP可以支持广播、组播的 转发。

没有一种链路层协议默认属于P2MP类型网络,也就是说必须是由其他的网络类型强制 更改为P2MP。常见的做法是将非完全连接的帧中继或ATM改为P2MP的网络。

 

文报类型及作用

协议号:89

version:版本,该字段值是2

type:类型

packet length:整个ospf报文的长度,单位是字节

Router ID:路由器ID

Area ID:此报文需要被通告到的区域

chescksum:校验字段

auth type:为0时表示不认证;为1 时表示简单的明文认证;为2时表示加密(MD5)认证

authentication:认证所需的信息

 

ospf报文类型

Type=1为Hello报文,用来建立和维护邻居关系,邻居关系建立之前,路由器之间需要 进行参数协商。

 Type=2为数据库描述报文(DD),用来向邻居路由器描述本地链路状态数据库,使得 邻居路由器识别出数据库中的LSA是否完整。

Type=3为链路状态请求报文(LSR),路由器根据邻居的DD报文,判断本地数据库是否 完整,如不完整,路由器把这些LSA记录进链路状态请求列表中,然后发送一个LSR给 邻居路由器。

 Type=4为链路状态更新报文(LSU),用于响应邻居路由器发来的LSR,根据LSR中的请 求列表,发送对应LSA给邻居路由器,真正实现LSA的泛洪与同步。 

Type=5为链路状态确认报文(LSAck),用来对收到的LSA进行确认,保证同步过程的 可靠性。

 

DD、LSR、LSU、LSAck与LSA的关系:

DD报文中包含LSA头部信息,包括LS Type、LS ID、Advertising Router 、LS Sequence Number、LS Checksum。

 LSR中包含LS Type 、LS ID和Advertising Router 。 

LSU中包含完整的LSA信息。

LSAck中包含LSA头部信息,包括LS Type、LS ID、Advertising Router、LS Sequence Number、LS Checksum。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。