当前位置:网站首页>应用最广泛的动态路由协议:OSPF
应用最广泛的动态路由协议:OSPF
2022-06-12 22:55:00 【InfoQ】
什么是OSPF?
Open Shortest Path First 224.0.0.5224.0.0.6OSPF 术语
- 邻居:运行 OSPF 的连接(相邻)路由器,相邻接口分配给同一区域,邻居是通过 Hello 数据包找到的(除非手动配置)。
- 邻接:路由器与其对应的 DR 和 BDR 之间的逻辑连接,除非形成邻接关系,否则不会交换路由信息。
- LSA: 链路状态通告,数据包包含链路状态和路由信息,在 OSPF 邻居之间共享。
- DR:指定路由器,
- BDR:BDR 是广播网络中 DR 的备份。当 DR 宕机时,BDR 变为 DR 并执行其功能。
- 区域:区域用于建立分层网络。
- ABR:区域边界路由器。
- ASBR:自治系统边界路由器。
- NBMA:非广播多路访问。
- Router-ID:用于识别 OSPF 路由器的 IP 地址。
- 链路状态:两个路由器之间的链路状态。
- 成本:链路状态协议为每个链路分配一个称为成本的值。
OSPF 特点
- 无类路由协议
- 支持VLSM、CIDR、手动路由汇总、等价负载均衡
- 支持增量更新
- 仅使用一个参数作为度量标准:接口成本。
- OSPF 路由的管理距离默认为110。
- 使用多播地址
224.0.0.5和224.0.0.6进行路由更新。
OSPF 报文类型

Hello报文
- 邻居发现
- Keep Alive
DD报文
Database DescriptionLSR报文
Link State RequestLSU报文
Link State UpdateLSAck报文
Link State AcknowledgementLSA类型

Router-LSA

Network-LSA

Network-summary-LSA

ASBR-summary-LSA

AS-external-LSA

NSSA LSA
Opaque LSA
- 9 类 LSA只在发布 LSA 的接口所在的网段发布。
- 10 类 LSA在 OSPF 区域内发布。
- 11 类 LSA在 AS 内发布
路由器类型

IA

BR

ABR

ASBR

路由类型

Intra Area

Inter Area

Type1 External
Type2 External
区域类型

普通区域

STUB区域
Totally STUB区域
NSSA区域
Totally NSSA区域
网络类型

广播类型
- 广播类型是OSPF的默认网络类型
- 要求链路支持第 2 层广播功能
- 需要使用 DR/BDR

NBMA类型
- OSPF帧中继默认网络类型
- 每个邻居都以单播方式相互连接,并且所有 OSPF 数据包都是单播的
- 需要使用 DR/BDR

点到点P2P类型
- 不维护 DR/BDR 关系
- 用于两台路由器之间

点到多点P2MP类型
- 不保持 DR/BDR 关系
- 通过组播地址224.0.0.5发送hello包
- 用于强制来自多个站点的流量通过总部或中心位置

总结
边栏推荐
- What you must know about cloud computing
- Analysis report on the "fourteenth five year plan" and the latest development trend of China's medical information industry from 2022 to 2028
- Qrcodejs2 QR code generation JS
- Theory + practice will help you master the dynamic programming method
- C语言:如何给全局变量起一个别名?
- Zhengzhou University of light industry -- development and sharing of harmonyos pet health system
- [machine learning] learning notes 01- introduction
- 【LeetCode】209. 长度最小的子数组
- 【LeetCode】数组中第K大的元素
- Dix points de défense clés dans les exercices d'attaque et de défense détaillés
猜你喜欢

2022 heavyweight: growth law - skillfully use digital marketing to break through enterprise difficulties

MySQL case when then function use

反走样/抗锯齿技术

JVM foundation > G1 garbage collector

C语言:如何给全局变量起一个别名?
![[Part 7] source code analysis and application details of cyclicbarrier [key]](/img/bc/8ba2b86e599539a29683a63d02f0f7.jpg)
[Part 7] source code analysis and application details of cyclicbarrier [key]

web3 原则和去中心化

Design a MySQL table for message queue to store message data

ASP. Net core Middleware

Mysql concat_ws、concat函数使用
随机推荐
Market trend report, technical innovation and market forecast of Chinese stump crusher
The shutter library recommends sizer to help you easily create a responsive UI
Design a MySQL table for message queue to store message data
Qrcodejs2 QR code generation JS
JVM Basics - > What are the thread shared areas in the JVM
The programmer dedicated to promoting VIM has left. Father of vim: I will dedicate version 9.0 to him
[leetcode] the k-largest element in the array
A 42 year old senior executive of a large factory reminds people aged 30-39 that these six habits that make you stronger should be developed as soon as possible
The interface testing tool apipos3.0 is applicable to process testing and reference parameter variables
ASP. Net core Middleware
China's elastic belt market trend report, technical dynamic innovation and market forecast
Es6+ new content
C语言:如何给全局变量起一个别名?
Use of map() function in JS
Common rendering pipeline grooming
Analysis report on production and marketing demand and investment forecast of China's Melamine Industry from 2022 to 2028
项目里面的traceID的设计
80 lines of code to realize simple rxjs
[machine learning] learning notes 01- introduction
C language: how to give an alias to a global variable?