Cisco学习笔记(CCNA)——Open Shortest Path First (OSPF)

Open Shortest Path First (OSPF)

动态路由协议介绍

动态路由协议:
向路由表中添加远程网络

探索网络

更新和维护路由表

自主网络探索:

通过共享路由表信息路由器能探索到新的网络

动态路由协议的分类

 内部网关协议(IGP) 适用于园区架构,范围小的

外部网关协议(BGP) 适用于城域网、骨干网,范围大的

距离矢量协议考虑距离和方向,已经很少遇见

链路状态协议不仅考虑距离和方向,还考虑沿途带宽和负载等,根据链路质量来选择路线

本篇仅讨论OSPF协议

距离矢量

距离矢量的意义:

使用距离矢量路由协议的路由器并不了解到达目的网络的整条路经。该路由器只知道:

自身与目的网络之间的距离

应该往哪个方向或使用哪个接口转发数据包

 

链路状态

链路状态(Link-State)

链路状态路由协议向全网扩散链路状态信息

链路状态路由协议当网络结构发生变化时立即发送更新信息

链路状态路由协议只发送需要更新的信息

链路状态协议适用于以下情形:

网络进行了分层设计,大型网络通常如此

管理员对于网络中采用的链路状态路由协议非常熟悉

网络对收敛速度的要求极高

 有类与无类路由协议

有类路由协议在路由信息更新过程中不发送子网掩码信息

eg:RIPv1、IGRP(EIGRP的前身)

 在无类路由协议的路由信息更新中,同时包括网络地址和子网掩码

eg:RIPv2、OSPF、IS-IS、BGP

 当今网络中基本上使用的都是无类的网络环境、无类的网络协议,一般不需要考虑分类方式

度量值

度量:

度量是指路由协议用来分配到达远程网络的路由开销的值

不同的路由协议的度量值的单位不同,IP路由协议中使用的度量如下:

带宽——EIGRP

开销——OSPF&IS-IS

延迟——EIGRP

跳数——RIP

负载——EIGRP

可靠性——EIGRP

 路由表只存放最优的路由信息

等价负载时会出现多条等价的路由信息

路由的学习(路由通告)和数据的传递相反

管理距离(AD)的用途

度量的用途:用于确定到达目的的最佳路径

管理距离的用途:用于指定路由协议的优先级

协议不同,无法沟通

EIGRP的度量单位metirc

RIP的度量单位是跳数

 管理性距离比较

 show ip protocols可以看到该动态路由协议的管理距离

直连网络永远是最优先的

距离矢量-网络发现

路由器初始启动—最初的网络发现—直连网络写入路由表

 初次路由信息交换

 路由信息交换

 

收敛

路由器收敛完成

当所有路由表包含相同网络信息

路由器继续交换路由信息

当无新信息时收敛结束

网络在达到收敛之前无法完全正常工作

 动态路由方便,但是消耗的资源比静态路由多,如:CPU、内存、带宽、背板占用率。在当今,这种资源的消耗可以忽略不计。

OSPF简介

Open Shortest Path First (OSPF),开放最短路径优先

是一种链路状态路由协议,无路由循环(全局拓扑),RFC2328

“开放”意味着非私有的

管理型距离:110

OSPF采用SPF算法计算达到目的地的最短路径

OSPF维护三张表:邻居表、拓扑表(链路状态数据库)、路由表

OSPF的三张表

邻居表(neighbor table)

OSPF用邻居机制来发现和维持路由的存在,邻居表存储了双向通信的邻居关系OSPF路由器列表的信息。

拓扑表(topology table)

OSPF用LSA(Link State Advertisement 链路状态通告)来描述网络拓扑信息,然后OSPF路由器用拓扑数据库来存储网络的这些LSA。

OSPF路由表(routing table)

对链路状态数据库进行SPF(Dijikstra)计算,而得出的OSPF路由表。

OSPF的基本运行步骤

1.建立邻接关系(Establish router adjacebcies)

2.必要的时候进行DR的选举(Elect the DR/BDR)

3.发现路由(Discover routes)

4.选择合适的路由器(Select appropriate routes)

5.维护路由信息(Maintain routing information)

建立邻接关系-Hello包

 Hello包用来发现OSPF邻居并建立相邻关系,通过组播地址:224.0.0.5发送给ALLOSPFRouters

通告两台路由器建立邻接关系所必须统一的参数

在以太网和帧中继网络等多路访问网络中选举指定路由器(DR)和备用指定路由器(BDR)

LSA的泛洪

DR、BDR:接口概念,不是设备概念,即一个设备的不同接口可能是DR也可能是BDR

为减小多路访问网络中的OSPF流量,OSPF会选举一个指定路由器(DR)和一个备用指定路由器(BDR)。

选举规则:最高接口优先级被选作DR,如果优先级相等(默认为1),具有最高的路由器ID(Router-ID)的路由器被选举成DR,并且DR具有非抢占性

指定路由器(DR):DR负责使用该变化信息更新其他所有OSPF路由器(DRother)

备用指定路由器(BDR):BDR会监控DR的状态,并在当前DR发生故障时接替其角色

 

RouterID

用于标识OSPF路由器的ID,全网唯一性。可手动配置,也可动态选举(有Loopback接口时,选择最高的Loopback IP地址;否则,选择最高活跃物理接口的IP地址)

 

OSPF metric

每个路由器都把自己当作根,并且给予累积成本(Cost值)来计算到达目的地的最短路径

Cost=参考带宽(10^8)/接口带宽(b/s)

 

OSPF区域

在区域边界可以做路由汇总,减小了路由表

减少了LSA泛洪的范围,有效地把拓扑变化控制在区域内,提高了网络的稳定性

拓扑的变化影响可以只限制涉及本区域

多区域提高了网络的扩展性,有利于组建大规模的网络

 

OSPF的配置

基本配置

开启OSPF进程(进程编号本地有效)

Router(config)#router ospf process-id

宣告特定的网络到OSPF区域

Router(config-router)#network address wildcard-mask area area-id

配置示例

Router(config)#router ospf 1

Router(config-router)#network 192.168.1.0 0.0.0.255 area 0

同一台路由器上可以有多个路由协议,具体选路根据管理距离来确定具体的协议

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

基于STM32设计的人体健康监护系统(华为云IOT)

一、设计需求 1.1 设计需求总结 根据需求,要求设计一款基于 STM32 的人体健康监护系统。采用系统模块化思路进行,将多个数模传感器收集到的数据和操作指令一并送至 STM32 中心处理器进行处理分析。 该系统可以实时监测被测者的心率、体温以及周围环境的温度,也同时可以通…

半导体自动化专用除静电设备的特点和功能

半导体自动化专用离子风机是一种用于半导体制造过程中的特殊风机设备。它通过产生带电粒子(离子)的气流来实现静电去除和除尘,以确保半导体制造环境的洁净和无尘。 以下是半导体自动化专用离子风机的一些特点和功能: 1. 静电去除…

【Vue3基础】计算属性

一、需求 二、代码 1、创建项目 创建项目: 1、 npm init vuelatest 2、一路回车 3、输入项目名,不要大写,如vue3bilibili 4、 cd vue3bilibili 5、 npm install 6、npm run dev启动,可以获取网址 2、App.vue文件中:…

Linux文件管理

WINDOWS/LINUX目录对比 Windows: 以多根的方式组织文件 C:\ D:\ E: Linux: 以单根的方式组织文件 / (根目录) Linux目录简介 /目录结构: FSH (Filesystem Hierarchy Standard) [rootlocalhost ~]# ls / bin dev lib media net root srv usr boot etc lib64 misc …

【Spring Boot Admin】介绍以及使用

介绍 概述 Spring Boot Admin是一个监控工具,旨在以一种漂亮且易于访问的方式可视化Spring Boot Actuators提供的信息。 主要功能点 显示应用程序的监控状态应用程序上下线监控查看 JVM,线程信息可视化的查看日志以及下载日志文件动态切换日志级别Http…

技术速览|Meta Llama 2 下一代开源大型语言模型

AI 使用大型语言模型(LLM)来理解和生成自然语言。LLM 可以从大量文本中学习并创建有关各种主题的文本,并可以完成比如编写代码、生成歌词、总结文章等任务。但有些 LLM 相关课程成本高昂且封闭,而现有的开放课程数量十分有限。这就…

机器学习深度学习——预备知识(上)

深大的夏令营已经结束,筛选入营的保研er就筛选了1/3,280多的入营总人数里面双非只有30左右。 最终虽然凭借机试拿到offer了,但是我感受到了自己的明显短板,比如夏令营的舍友就都有一篇核心论文,甚至还有SCI一区一作的。…

Docker数据管理和网络通信 dockerfile

Docker数据管理和网络通信 dockerfile 一:Docker 的数据管理1.数据卷2.数据卷容器 二:端口映射三:容器互联(使用centos镜像)四:Docker 镜像的创建1.基于现有镜像创建2&am…

证书文件无法生成.p12

做好的证书文件在生成.p12文件的过程中遇到了.p12选项置灰且无法选择并导出的情况 解决办法 起初认为生成的空白 CertificateSigningRequest 有问题,反反复复尝试几次制作后均无效; 而后发现问题出在了钥匙串访问的选项问题上 ... 将顶部菜单 tab 由"所有选项"切换至…

从不同的使用场景认识STag26

当你买下STag26时, 你买到的是什么? 如果你是商超生鲜区的经理, 你买到的是在促销旺季时的高效与安心。 你不用再担心价格没有及时更新, 导致水果蔬菜的滞销。 毕竟,STag26能够一键改价,实时更新&#x…

项目:点餐系统1

项目简介:实现一个http点餐系统服务器,能够支持用户在浏览器访问服务器获取餐馆首页,进行菜品以及订单管理。 具体模型如下: 用户分类: 管理员:进行订单以及菜品管理(菜品&订单的增删改查&a…

【C#】using

文章目录 global 修饰符using 别名结合“global 修饰符”和“using 别名”static 修饰符来源 global 修饰符 向 using 指令添加 global 修饰符意味着 using 将应用于编译中的所有文件(通常是一个项目)。 global using 指令被添加到 C# 10 中。 其语法为…

LiveGBS流媒体平台GB/T28181功能-视频直播流媒体平台分屏展示设备树分组树记录上次分屏播放记录

LiveGBS视频直播流媒体平台分屏展示设备树分组树记录上次分屏播放记录 1、分屏展示1.1、单屏1.2、四分屏1.3、九分屏1.4、十六分屏 2、分屏记录3、搭建GB28181视频直播平台 1、分屏展示 LiveGBS分屏页面支持,多画面播放,支持单屏、四分屏、九分屏、十六…

Java-API简析_java.net.Proxy类(基于 Latest JDK)(浅析源码)

【版权声明】未经博主同意,谢绝转载!(请尊重原创,博主保留追究权) https://blog.csdn.net/m0_69908381/article/details/131881661 出自【进步*于辰的博客】 因为我发现目前,我对Java-API的学习意识比较薄弱…

xcode15启动IOS远程调试

1.用数据线连接IPhone到macOS 2.打开xcode15,然后点击Window->Devices and Simulators 3.选中左边的Devices可看到已连接的IPhone,然后点击Connect via network使其选中. 选择后,左边的IPhone设备的右边出现一个地球图标,表示成功通过网络连接到IPhone 现在可断开数据线的…

GoogleLeNet Inception V1

文章目录 Inception V1Inception Modulenative versionInception module with dimensionality reduction1 * 1网络的降维说明 多个Softmax的输出整体结构 GoogleLeNet主要是把深度扩充到了22层,能增加网络深度而不用担心训练精度和梯度消失问题。 总共是提出了4个版…

Cilium系列-4-Cilium本地路由

系列文章 Cilium 系列文章 前言 在前文中我们提到, cilium install 默认安装后, Cilium 功能启用和禁用情况如下: datapath mode: tunnel: 因为兼容性原因,Cilium 会默认启用 tunnel(基于 vxlan) 的 datapatch 模式,也就是 overlay 网络结…

Python数据分析实战-datafram按某(些)列按值进行排序(附源码和实现效果)

实现功能 Python对datafram按某(些)列进行排序(附源码和实现效果) 实现代码 import pandas as pd# 读取数据 datapd.read_csv(E:\数据杂坛\\UCI Heart Disease Dataset.csv) dfpd.DataFrame(data) print(df.head())# # 按某列的…

【干货分享】如何恢复SOLIDWORKS 零件、装配体和工程图模板?

当我们卸载了SOLIDWORKS或者是购买了一台新笔记本电脑或是丢失了一直在使用的模板时,我们可以通过打开过去的零件、装配体和工程图文件来恢复 SOLIDWORKS 模板。 ▷ 零件模板 打开包含所需自定义属性的上一个部件。 保存零件的副本以避免对原始文件进行意外更改。…

React:从 npx开始

使用 npm 来创建第一个 recat 文件( react-demo 是文件名,可以自定义) npx create-react-app react-demo npx是 npm v5.2 版本新添加的命令,用来简化 npm 中工具包的使用 原始: 全局安装npm i -g create-react-app 2 …