华为数通笔记-OSPF基础

本文详细介绍了OSPF(开放式最短路径优先)协议的定义、目的、工作原理,涉及Hello报文、DD报文、LSA类型及其传播,以及DR/BDR选举、COST度量、邻居状态机、认证、路由聚合和特殊区域配置。涵盖了邻接关系建立、路由计算和实际应用场景。

OSPF简介

定义

开放式最短路径优先OSPF(Open Shortest Path First)是IETF组织开发的一个基于链路状态的内部网关协议(Interior Gateway Protocol)。

目的

在OSPF出现前,网络上广泛使用RIP(Routing Information Protocol)作为内部网关协议。

由于RIP是基于距离矢量算法的路由协议,存在着收敛慢、路由环路、可扩展性差等问题,所以逐渐被OSPF取代。

OSPF作为基于链路状态的协议,能够解决RIP所面临的诸多问题。此外,OSPF还有以下优点:

OSPF采用组播形式收发报文,这样可以减少对其它不运行OSPF路由器的影响

OSPF支持无类型域间选路(CIDR)

OSPF支持对等价路由进行负载分担

OSPF支持报文加密。

OSPF基础

OSPF协议具有以下特点:

OSPF把自治系统AS(Autonomous System)划分成逻辑意义上的一个或多个区域;

OSPF通过LSA(Link State Advertisement)的形式发布路由

OSPF依靠在OSPF区域内各设备间交互OSPF报文来达到路由信息的统一;

OSPF报文封装在IP报文内可以采用单播或组播的形式发送。

报文类型

OSPF报文直接采用IP封装,在报文的IP头部中,协议号为89。

报文类型

报文作用

Hello报文

周期性发送,用来发现和维持OSPF邻居关系。

DD报文(Database Description packet)

描述本地LSDB(Link State Database)的摘要信息,用于两台设备进行数据库同步。

LSR报文(Link State Request packet)

用于向对方请求所需的LSA。

设备只有在OSPF邻居双方成功交换DD报文后才会向对方发出LSR报文。

LSU报文(Link State Update packet)

用于向对方发送其所需要的LSA。

LSAck报文(Link State Acknowledgment packet)

用来对收到的LSA进行确认。

Hello报文

Network Mask发送Hello报文的接口的网络掩码。

HelloInterval发送Hello报文的时间间隔。通常为10s

RouterDeadInterval失效时间。如果在此时间内未收到邻居发来的Hello报文,则认为邻居失效。通常为40s

Neighbor邻居,以Router ID标识。

其它字段解释

Options   

E:是否支持外部路由

MC:是否支持转发组播数据包

N/P:是否为NSSA区域

Router PriorityDR优先级。默认为1。如果设置为0,则路由器不能参与DRBDR的选举。

Designated RouterDR的接口地址。

Backup Designated RouterBDR的接口地址。

DD报文

Interface MTU:指示在不分片的情况下,此接口最大可发出的IP报文长度。在两个邻居发送DD报文中包含MTU参数,如果收到的DD报文中MTU和本端的MTU不相等,则丢弃该DD报文。缺省情况下,华为设备未开启MTU检查。

Optinons:字段同Hello报文。

I 1比特 指定在连续发送多个DD报文,如果是第一个DD报文则置1,其它的均置0。

M 1比特 指定在连续发送多个DD报文,如果是最后一个DD报文则置0,否则均置1。

M/S 1比特 设置进行DD报文双方的主从关系,如果本端是Master角色,则置1,否则置0。

DD Sequence Number 4字节 指定所发送的DD报文序列号。主从双方利用序列号来确保DD报文传输的可靠性和完整性。

LSA Heaader 4字节 指定DD报文中所包括的LSA头部。后面的省略号(…)表示可以指定多个LSA头部。

 

 LSR报文

LSR报文用于请求相邻路由器链路状态数据库中的一部分数据。当两台路由器互相交换完DD报文后,知道对端路由器有哪些LSA是本LSDB所没有的,以及哪些LSA是已经失效的,则需要发送一个LSR报文,向对方请求所需的LSA。LSR报文内容包括所需的LSA摘要,如图:

LS type 4字节 指定所请求的LSA类型,主要共6类。

Link State ID 4字节 用于指定ospf所描述的部分区域,该字段的使用方法根据不同的LSA类型而不同:当为LSA 1时,该字段值是产生LSA 1的路由器的Router-ID,当为LSA 2时,该字段值是DR的接口地址,当为LSA 3时,该字段值是目的网络的网络地址,当为LSA 4时,该字段值是ASBR的Router-ID,当为LSA 5时,该字段值是目的网络的网络地址。

Advertising Router 4字节 指定产生此所要请求的LSA的路由器ID。

如上三个字段可以表示唯一的一个LSA,一个LSR报文可以请求多个LSA

OSPF LSU报文

LSU报文是应LSR报文的请求,用来向对端路由器发送所需的LSA,内容是多条LSA完整内容的集合,LSU报文内容部分包括此次共发送的LSA数量和每条LSA的完整内容。

LSU报文在支持组播和多路访问的链路上是以组播方式将LSA泛洪出去的,并且对没有收到对方确认应答(就是下面将要介绍的LSAck报文)LSA进行重传但重传时的LSA是直接送到没有收到确认应答的邻居路由器上,而不再是泛洪。

Number of LSAs 4字节 指定此报文中共发送的LSA数量。

LSAs 4字节 是一条条具体的LSA完整信息,后面的省略号表示可多条LSA。

OSPF LSAck报文

LSAck报文是路由器在收到对端发来的LSU报文后所发出的确认应答报文,内容是需要确认的LSA头部(LSA Headers,整个LSAck报文的格式如图所示。LSAck报文根据不同链路以单播或组播形式发送。

 

 

LSA类型

LSA类型

LSA作用

Router-LSA(Type1)

每个设备都会产生,描述了设备的链路状态和开销,在所属的区域内传播。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值