笔记整理六----OSPF协议

                                                              OSPF

动态路由的分类:

1.基于网络范围进行划分--将网络本身划分为一个个AS(自治系统---方便管理和维护)

        内部网关协议---负责AS内部用户之间互相访问使用的协议 IGP--RIP EIGRP ISIS OSPF

        外部网关协议--负责AS之间(整个互联网)的数据通讯 EGP--BGP EGP(淘汰)

2.基于协议本身的工作(基于协议使用的算法)

        DV----距离矢量路由协议:RIP EIGRP

        LS----链路状态路由协议:ISIS OSPF

3.基于传递数据包是否携带子网掩码

        有类别的动态路由协议---RIPV1

        无类别的动态路由协议---其他所有协议

如何判断一款动态路由协议的好坏?

1.选路

RIP协议(应用层协议,组播方式224.0.0.9),根据跳数(到达目标网段经过的路由器的数量)进行选路,参数为COST

RIP协议传递cost值得方法:本地路由表中cost值加1

OSPF协议(组播数据包 224.0.0.5/6),使用SPF最短路径优先算法

OSPF设备收集拓扑信息,基于这些信息生成有向图,然后将有向图转化为最短路径树,最后基于拓扑信息生成路由表

2.收敛速度

收敛:网络中所有设备获取到整个网络所有需要获取的路由信息的过

首次收敛---所有协议时间相差不大

重新收敛--RIP计时器 30S周期计时器 180S失效计时器 120S垃圾回收计时器;OSPF计时器 hello时间 10或30S   dead时间 4倍hello时间

3.资源占用

RIP协议有30S周期更新时间,资源占用大

OSPF资源占用也比较大,但OSPF协议有相关的优化措施

为了减少拓扑信息的更新数量,采用了结构化部署的思想(设计理念)

区域划分:

ABR--区域边界路由器:同时属于两个区域的设备

如果网络规模本身不是很大,那么实际上也可以不进行区域划分,这

样的OSPF网络称为单区域OSPF网络

如果网络规模本身很大,那么一般需要进行区域划分,减少拓扑信息的传递数量,这样的OSPF网络称为多区域OSPF网络

为了区分和标识不同的区域,OSPF设计了区域ID,实质是32位二进制

区域划分的原则(如果部署OSPF网络):

1.必须存在ABR设备

2.必须按照星形拓扑结构进行区域划分(防止出现环路)

OSPF的工作过程:

要了解工作过程,首先先让我们认识一下OSPF的数据包

hello包 ---周期性的发现建立和保活邻居关系
        Router-id (RID)路由器ID---用来标识和区分不同的运行OSPF协议的设备身份
        (必须保证OSPF RID 在整个 OSPF 网络中必须不能重复)
        RID的生成规则:(实际是32 位二进制,按照 IP 地址格式配置即可)
        1.手工配置
        2.设备自动生成:首先检测自身是否存在环回,选择数值最大的作为自
        身的RID ,没有环回检测接口IP地址,选择数值最大的作为自身的 RID
        如果接口没有配置IP 地址协议无法工作
        hello时间,默认10S/30S
        dead时间,默认是hello时间的4倍
DBD包- --链路状态数据库描述包,携带本地链路状态数据库的摘要信息---为了减少可能的重复更新
        本地链路状态数据库--LSDB数据库
        链路状态信息---LSA(所谓的拓扑信息)
LSR包 --链路状态请求包:请求自身设备比对摘要信息之后,自身没有
的LSA信息
LSU包 --真正携带LSA信息的数据包(对端设备请求那些LSA,就发送
那些LSA)
LSACK包- --用来保证数据传输可靠性
认识完数据包后,接下来的是 OSPF的状态机
1.需要建立邻居关系---hello报文(协商参数)

        从Down状态到2-Way状态的条件:

        1.参数协商成功

        2.必须收到对端的hello包中携带自身的RID 

2.建立邻居之后,需要进行条件匹配,如果条件匹配成功进行后续状态,如果条件匹配失败则停留邻居状态,仅保活

3.条件匹配成功,则开始进行主从关系选举
DBD --本身标志状态进入到邻接关系的建立

 

工作过程:

1. 建立邻居:启动配置之后, ospf 将向本地所有的运行了 ospf 协议的
端口发送 hello 包( 224.0.0.5 ), hello 包中携带自己的 RID 用来区分
不同路由器的身份(不携带路由信息)用来发现网络中运行 OSPF 协议
的设备,同时携带自己已知的邻居 RID ,之后会将这些 RID 存储在自己
邻居表 中,当收到hello报文中携带自身的RID那么设备会进入two
way状态完成邻居关系的建立。
2. 条件匹配:邻居关系建立完成之后,会进行条件匹配,如匹配成功
则开始进入下一个状态,如果匹配失败则会停留在邻居关系。 --- 之后
hello 包进行保活。
3. 如果匹配成功,则开始建立邻接关系 - 之后会使用未携带数据 DBD
并没有携带LSDB的摘要信息 )进行主从关系的选举。从设备会优先
主动发送 DBD 报文的摘要信息,主设备收到摘要信息之后会比对本地链
路状态数据库,从而请求本地没有的 LSA 信息。对端设备会发送真正携
lsa 信息的 LSU 包,自身会利用 LSACK 进行确认。本地的链路状态数据
库建立完成,生成 本地链路数据库表 。---Full---邻接状态

 4.完成收敛----基于本地的链路状态数据库收集的lsa,根据自己的 spf算法计算得出最短路径树。生成路由表

5.收敛完成后,会使用hello包每10s发送一次,用来保活邻居关

系。 ospf会每30min进行一次周期更新
OSPF的基本配置:
基础配置:

 

 

扩展配置:

 

查看邻居详细信息:

 

查看邻居简表---主要查看状态

 

查看数据库:

 

 

 

 

OSPF的触发更新:

1.设备无法沟通:其它设备等待死亡时间,然后会清空该设备的所有拓扑信息

2.新增网段

3.断开网段

 

条件匹配:

为了解决在一个广播域中有多台运行了 OSPF协议的设备, 从而导致重复更新的问题,浪费资源(同时还可以减少邻接关系的数量,降低网络复杂度),在two-way状态下完成,使用hello报文进行条件匹配存在最大选举时间一般等于死亡时间 --条件匹配是非抢占的(为了网络稳定性考虑)

实际是选举角色---需要选举DRBDR其他设备为DR-other

首先比较设备优先级,范围0-255,默认为1,越大越优

当优先级一致比较设备R-ID选举,R-ID最大的作为DR,次大的作为BDR

[Huawei-GigabitEthernet0/0/0]ospf dr-priority 0-- 一旦优先级配置为 0
视为放弃选举
224.0.0.6 DR BDR 设备之间同步数据库使用的组播地址

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/81678.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

网络编程,使用select()进行简单服务端与客户端通信

这里在Ubuntu环境下演示 一般流程 服务端常用函数: socket():创建一个新的套接字。bind():将套接字与特定的IP地址和端口绑定。listen():使套接字开始监听传入的连接请求。accept():接受一个传入的连接请求&#xff…

智能决策支持系统的基本概念与理论体系

决策支持系统是管理科学的一个分支,原本与人工智能属于不同的学科范畴,但自20世纪80年代以来,由于专家系统在许多方面取得了成功,于是人们开始考虑把人工智能技术用于计算机管理中来。在用计算机所进行的各种管理中,如…

驱动开发系列55 - Linux Graphics QXL显卡驱动代码分析(二)显存管理

一:概述 前面介绍了当内核检测到匹配的PCI设备后,会调用 qxl_pci_probe 初始化设备,其中会调用qxl_device_init 来初始化设备,为QXL设备进行内存映射,资源分配,环形缓冲区初始化,IRQ注册等操作,本文展开说说这些细节,以及介绍下QXL的显存管理。 二:QXL设备初始化细节…

洛谷 P1495:【模板】中国剩余定理(CRT)/ 曹冲养猪

【题目来源】 https://www.luogu.com.cn/problem/P1495 https://www.acwing.com/problem/content/225/ 【题目描述】 自从曹冲搞定了大象以后,曹操就开始捉摸让儿子干些事业,于是派他到中原养猪场养猪。可是曹冲满不高兴,于是在工作中马马虎…

配置和使用持久卷

配置和使用持久卷 文章目录 配置和使用持久卷[toc]一、PV与PVC的持久化存储机制二、PV和PVC的生命周期三、创建基于NFS的PV1.准备NFS共享目录2.创建PV 四、基于PVC使用PV1.创建PVC2.使用PVC 五、基于StorageClass实现动态卷制备1.获取NFS服务器的连接信息2.获取nfs-subdir-exte…

FreeRTOS菜鸟入门(十)·消息队列

目录 1. 基本概念 2. 数据存储 3. 运作机制 4. 阻塞机制 4.1 出队阻塞 4.2 入队阻塞 5. 操作示意图 5.1 创建队列 5.2 向队列发送第一个消息 5.3 向队列发送第二个消息 5.4 从队列读取消息 6. 消息队列控制块 7. 消息队列常用函数 7.1 消息队列创建…

java 洛谷题单【算法2-2】常见优化技巧

P1102 A-B 数对 解题思路 输入读取与初始化: 使用 Scanner 读取输入。n 表示数组的长度,c 表示目标差值。使用一个 HashMap 存储数组中每个数字及其出现的次数,方便快速查找。数组 a 用于存储输入的数字。 构建哈希映射: 遍历数…

视频转GIF

视频转GIF 以下是一个使用 Python 将视频转换为 GIF 的脚本,使用了 imageio 和 opencv-python 库: import cv2 import imageio import numpy as np """将视频转换为GIF图参数:video_path -- 输入视频的路径gif_path -- 输出GIF的路径fp…

计算机网络:详解TCP协议(四次握手三次挥手)

目录 1.Tcp协议介绍 1.1 Tcp协议层级 1.2 TCP协议的格式 2. 确认应答机制 2.1 确认应答 2.2 序号字段 2.3 捎带应答 3. 流量控制 4. 三次握手 四次挥手 4.1 认识标志位 4.2 简单认识 4.3 三次挥手 4.4 四次挥手 1.Tcp协议介绍 1.1 Tcp协议层级 计算机网络&#x…

小程序 IView WeappUI组件库(简单增删改查)

IView Weapp 微信小程序UI组件库:https://weapp.iviewui.com/components/card IView Weapp.png 快速上手搭建 快速上手.png iView Weapp 的代码 将源代码下载下来,然后将dict放到自己的项目中去。 iView Weapp 的代码.png 小程序中添加iView Weapp 将di…

用java实现一个简单的sql select 解析器,无需第三方依赖,完全从0开始

以下是一个简单的 SQL SELECT 解析器的 Java 实现,支持单表查询和基本条件过滤。代码包含词法分析和语法分析模块,并支持以下语法: SELECT column1, column2 FROM table WHERE column3 5 完整代码 1. Token 类型定义 (TokenType.java) pu…

阿里云 CentOS YUM 源配置指南

阿里云 CentOS YUM 源配置指南 在使用 CentOS 7 时,由于 CentOS 官方源停止维护等原因,yum install 命令可能会报错 “Cannot find a valid baseurl for repo: centos-sclo-rh/x86_64”。以下是通过更换阿里云源解决该问题的详细步骤。 一、备份原有配…

Learning vtkjs之ThresholdPoints

过滤器 阈值过滤器 介绍 vtkThresholdPoints - 提取满足阈值条件的点 vtkThresholdPoints 是一个过滤器,它从数据集中提取满足阈值条件的点。该条件可以采用三种形式: 1)大于特定值; 2) 小于特定值; 3) 在特定值之间…

记录ruoyi-flowable-plus第一次运行流程报错

记录ruoyi-flowable-plus第一次运行流程报错 错误步骤 1.启动ruoyi-flowable-plus 正常登录后,打开流程分类然后点击新增按钮,新增了一个分类。增加成功后, 再点击流程分类,报错。 错误提示 org.springframework.cglib.core.C…

Java中的stream流介绍与使用

一、Stream 的基础概念 定义与特性 Stream 是单向数据流,对集合或数组进行高效处理,不存储数据,而是通过操作链生成新 Stream。不可变性:原始数据源不被修改,所有操作均返回新 Stream。延迟执行:中间操作&a…

OCR身份证识别(正反面)_个人证照OCR识别_开放API接口使用指南

一、接口简介 在数字化时代,快速准确地提取身份证信息变得尤为重要。**万维易源提供的“身份证OCR识别”API接口,能够快速提取二代居民身份证正反面的所有字段信息,包括姓名、性别、民族、出生日期、住址、身份证号、签发机关、有效期限等。…

25年新版潮乎盲盒系统源码 盲盒商城系统前端分享

盲盒系统市场的前景一直都很不错,最近很多问我有没有盲盒源码的客户,下面给大家分享一个新版潮乎盲盒源码! 这款盲盒源码系统 前端Uniapp 后端使用了Laravel框架进行开发。Laravel是一个流行的PHP框架,具有强大的功能和易于使用的…

Transformer四模型回归打包(内含NRBO-Transformer-GRU、Transformer-GRU、Transformer、GRU模型)

Transformer四模型回归打包(内含NRBO-Transformer-GRU、Transformer-GRU、Transformer、GRU模型) 目录 Transformer四模型回归打包(内含NRBO-Transformer-GRU、Transformer-GRU、Transformer、GRU模型)预测效果基本介绍程序设计参…

Axure疑难杂症:利用中继器制作三级下拉菜单(逻辑判断进阶)

亲爱的小伙伴,在您浏览之前,烦请关注一下,在此深表感谢! Axure产品经理精品视频课已登录CSDN可点击学习https://edu.csdn.net/course/detail/40420 课程主题:三级下拉菜单 主要内容:条件筛选时的逻辑判断思维,中继器使用 应用场景:复合条件下的下拉列表制作 案例展…

Nginx 核心功能之正反代理

目录 一、Nginx 二、正向代理 三、反向代理 四、Nginx 缓存 1. 缓存功能的核心原理和缓存类型 2. 代理缓存功能设置 五、Nginx rewrite和正则 (1)Nginx 正则 (2)nginx location (3)Rewrite &…