当前位置: 首页 > news >正文

常见的路由协议之RIP协议与OSPF协议

目录

RIP

OSPF

洪泛和广播的区别


        路由协议是用于在网络中确定最佳路径的一组规则。它们主要用于在路由器之间交换路由信息,以便找到从源到目标的最佳路径。

常见的路由协议:

  1. RIP (Routing Information Protocol):RIP 是一种基于距离向量算法的内部网关协议。它使用跳数作为度量标准,最多允许15跳。RIP 的两个版本是 RIPv1(不支持子网划分和CIDR)和 RIPv2(支持子网划分和CIDR)。

  2. OSPF (Open Shortest Path First):OSPF 是一种基于链路状态算法的内部网关协议。它使用代价作为度量标准,并根据带宽计算代价。OSPF 支持子网划分、CIDR、VLSM(可变长度子网掩码)以及在大型网络中进行分区。

  3. EIGRP (Enhanced Interior Gateway Routing Protocol):EIGRP 是一种基于距离向量和链路状态算法的混合内部网关协议。它使用带宽和延迟作为度量标准,并支持子网划分、CIDR、VLSM 和快速收敛。

  4. BGP (Border Gateway Protocol):BGP 是一种基于路径向量算法的外部网关协议。它用于在自治系统(AS)之间交换路由信息。BGP 使用 AS 路径长度、MED(多路径退出选择器)等属性作为度量标准。BGP 的两个版本是 BGP-4(支持CIDR 和路由聚合)和 BGP-4+(支持IPv6)。

  5. IS-IS (Intermediate System to Intermediate System):IS-IS 是一种基于链路状态算法的内部网关协议,主要用于大型网络。它使用代价作为度量标准,并支持子网划分、CIDR、VLSM 和分区。

本篇主要讲析一下RIP和OSPF路由协议。

两者都是内部网关路由协议,用于在同一个自治系统(AS)内的路由器之间交换路由信息。


RIP

  1. 基于距离向量算法。
  2. 使用跳数作为度量标准,最大跳数为15
  3. 定时广播更新路由表,每30秒一次。
  4. 支持RIPv1(不支持子网划分、CIDR)和RIPv2(支持子网划分、CIDR)。


    配置(Cisco路由器)
router ripversion 2network 192.168.1.0network 192.168.2.0no auto-summary

OSPF

  1. 基于链路状态算法。
  2. 使用代价作为度量标准,根据带宽计算。
  3. 支持子网划分、CIDR、VLSM和分区。
  4. 使用洪泛方式发送链路状态通告(LSA),而非定时广播。

配置(Cisco路由器)

router ospf 1network 192.168.1.0 0.0.0.255 area 0network 192.168.2.0 0.0.0.255 area 0

        洪泛方式传播,确保所有路由器都接收到最新的链路状态信息。会构建一个链路状态数据库,然后使用Dijkstra算法计算到达其他网络的最短路径。


 

洪泛和广播的区别

(1)概念上:
洪泛:当一个节点(如路由器)接收到一条新的信息,发送到所有与其相邻的节点,而不管这些节点是否需要这个信息。这个过程会一直持续下去,直到信息传播到整个网络中的所有节点。

广播:广播是一种一对多的通信方式,源节点会将信息发送给网络中的所有节点。广播通常在数据链路层或网络层进行。

(2)范围限制

  • 洪泛:可以通过设置生存时间(TTL)或其他机制来限制信息的传播范围。
  • 广播:常受到子网或广播域的限制。

(3)传播效率上,洪泛可能会导致网络中的冗余信息传播但能实时了解网络中其他路由器的状态,广播在某些情况下可能更有效,因为信息只发送给网络中的所有节点一次

相关文章:

常见的路由协议之RIP协议与OSPF协议

目录 RIP OSPF 洪泛和广播的区别 路由协议是用于在网络中确定最佳路径的一组规则。它们主要用于在路由器之间交换路由信息,以便找到从源到目标的最佳路径。 常见的路由协议: RIP (Routing Information Protocol):RIP 是一种基于距离向量算…...

使用ip2region获取客户端地区

目录 从gitee拉取ip2region.xdb资源文件 写测试类 注意要写对资源路径 本地测试结果 ​编辑 远端测试结果 从gitee拉取ip2region.xdb资源文件 git clone https://gitee.com/lionsoul/ip2region.git 将xdb放入resources资源文件夹 引入依赖 <dependency><groupId&…...

RH850从0搭建Autosar开发环境【24】- Davinci Configurator之DEM模块配置详解(上)

DEM模块配置详解 - 上 一、Autosar中DEM模块简介1.DEM对其他模块的依赖2.DEM模块架构2.1 DEM模块Dem Satellite(s) 和Master2.2 诊断事件处理2.2.1 基于计数器的算法2.2.2 基于时间的算法三、配置错误项处理3.1 容器DemEventParameter3.2 容器DemOperationCycleRef3.3 容器DemO…...

uniapp封装接口

uniapp封装接口 在本篇技术博文中&#xff0c;我们将深入探讨 Uniapp 框架中如何封装接口&#xff0c;以简化开发流程并提高效率。接口封装是一种重要的开发策略&#xff0c;它不仅可以减少代码量&#xff0c;还能提高代码的复用性和维护性。 通过阅读本文&#xff0c;你将深…...

Android布局【TableLayout】

文章目录 说明常见属性子控件设置属性 项目结构主要代码 说明 TableLayout也称为表格布局 常见属性 android:collapseColumns&#xff1a;设置需要被隐藏的列的序列号&#xff0c;从0开始android:stretchColumns&#xff1a;设置允许被拉伸的列的列序号&#xff0c;从0开始&…...

C/C++中static关键字详解

静态变量作用范围在一个文件内&#xff0c;程序开始时分配空间&#xff0c;结束时释放空间&#xff0c;默认初始化为0&#xff0c;使用时可以改变其值。 静态变量或静态函数只有本文件内的代码才能访问它&#xff0c;它的名字在其它文件中不可见。用法1&#xff1a;函数内部声明…...

Memory Analyzer(MAT)分析内存

关于作者&#xff1a;CSDN内容合伙人、技术专家&#xff0c; 从零开始做日活千万级APP。 专注于分享各领域原创系列文章 &#xff0c;擅长java后端、移动开发、人工智能等&#xff0c;希望大家多多支持。 目录 一、导读二、概览三、 使用3.1 hprof 文件准备3.1.1 Android sutdi…...

计算机网络面试题

目录 OSI 的五层模型分别是&#xff1f;各自的功能是什么&#xff1f; 应用层 传输层 网络层 数据链路层 物理层 OSI 的七层模型分别是&#xff1f; TCP连接的建立 三次握手中客户端和服务端是什么状态 为什么是三次&#xff0c;不是两次&#xff1f; 四次…...

【LeetCode75】第三十题 奇偶链表

目录 题目&#xff1a; 示例&#xff1a; 分析&#xff1a; 代码&#xff1a; 题目&#xff1a; 示例&#xff1a; 分析&#xff1a; 题目给我们一个链表&#xff0c;让我们把奇索引和偶索引的节点区分开来 &#xff0c;参考示例给出的图我们应该就能很清晰地知道题目是什么…...

docker 学习--03 环境安装(本人使用的win10 Linux也是在win10下模拟)

docker 学习–03 环境安装&#xff08;本人使用的win10 Linux也是在win10下模拟&#xff09; docker 学习-- 01 基础知识 docker 学习-- 02 常用命令 文章目录 docker 学习--03 环境安装&#xff08;本人使用的win10 Linux也是在win10下模拟&#xff09;[TOC](文章目录) 1. wi…...

【代码质量】认知复杂度(COGNITIVE COMPLEXITY)一种衡量可理解性的新方法

白皮书地址 摘要&#xff1a;圈复杂度最初是作为“可测试性和模块控制流的“可维护性”。虽然它擅长于衡量前者&#xff0c;但它的数学模型不能产生一个令人满意的值来衡量后者。本文描述一种打破数学度量模型的新度量模型来评估代码&#xff0c;以弥补圈复杂度的缺点&#xf…...

什么是JavaScript中的内存泄漏和如何避免内存泄漏?

1、什么是JavaScript中的内存泄漏和如何避免内存泄漏&#xff1f; JavaScript中的内存泄漏是指在程序运行过程中&#xff0c;一些不再使用的对象或数据仍然存在于内存中&#xff0c;导致内存无法释放&#xff0c;最终导致内存耗尽。 为了避免内存泄漏&#xff0c;可以采取以下…...

安全头响应头(三)​X-Content-Type-Options

一 X-Content-Type-Options响应头 说明&#xff1a;先写个框架,后续补充 思考&#xff1a;请求类型是 "style" 和 "script" 是什么意思? script标签 style StyleSheet JavaScript MIME type 文件扩展和Content-Type的映射关系 场景&#xff1a; 一个…...

13 计算机视觉-代码详解

13.2 微调 为了防止在训练集上过拟合&#xff0c;有两种办法&#xff0c;第一种是扩大训练集数量&#xff0c;但是需要大量的成本&#xff1b;第二种就是应用迁移学习&#xff0c;将源数据学习到的知识迁移到目标数据集&#xff0c;即在把在源数据训练好的参数和模型&#xff…...

jupyter打开ipynb后,还没有运行cell,反复报错

今天遇到了一个比较奇怪的问题&#xff1a; 这个原因是当前目录下有一个code.py的文件&#xff0c;一旦打开ipynb&#xff0c;就是先执行code.py&#xff0c;而且遇到报错&#xff0c;还会反复执行&#xff0c;导致内核崩溃。...

一台阿里云服务器怎么部署多个网站?以CentOS系统为例

本文阿里云百科介绍如何在CentOS 7系统的ECS实例上使用Nginx搭建多个Web站点。本教程适用于熟悉Linux操作系统&#xff0c;希望合理利用资源、统一管理站点以提高运维效率的用户。比如&#xff0c;您可以在一台云服务器上配置多个不同分类的博客平台或者搭建多个Web站点实现复杂…...

history记录日期时间和日志记录操作

history命令能查看到操作日期和时间的配置方法&#xff1a; 1&#xff09;在/etc/profile文件中添加一行&#xff1a; export HISTTIMEFORMAT"%F %T whoami " 2&#xff09;保存后&#xff0c;执行加载命令&#xff1a; source /etc/profile 3&#xff09;然后检…...

RocketMQ 单机源码部署 自定义配置文件和端口以及acl权限配置解析

思路 1、我们首先配置完 namesrv和broker和acl认证的配置文件&#xff0c;然后直接使用-c指定配置文件来启动程序&#xff0c;就会非常明了&#xff0c;用户名密码要大于6&#xff0c;第一个用户我测试着不知道为什么始终有最高权限&#xff0c;大家尽量不要吧第一个用户给别人…...

NuGet控制台命令初步使用

查看所有安装的包&#xff0c; 查找包&#xff0c;提示Nuget版本低&#xff1b;安装一个更高版本&#xff1b; 查看所有安装的包&#xff0c; 查找名字包含某字符串的包&#xff0c; 查找名字包含某字符串的包&#xff0c; 安装&#xff0c;使用-version指定版本&#xff0c;可…...

2023年国赛数学建模思路 - 案例:FPTree-频繁模式树算法

文章目录 算法介绍FP树表示法构建FP树实现代码 建模资料 ## 赛题思路 &#xff08;赛题出来以后第一时间在CSDN分享&#xff09; https://blog.csdn.net/dc_sinor?typeblog 算法介绍 FP-Tree算法全称是FrequentPattern Tree算法&#xff0c;就是频繁模式树算法&#xff0c…...

云原生核心技术 (7/12): K8s 核心概念白话解读(上):Pod 和 Deployment 究竟是什么?

大家好&#xff0c;欢迎来到《云原生核心技术》系列的第七篇&#xff01; 在上一篇&#xff0c;我们成功地使用 Minikube 或 kind 在自己的电脑上搭建起了一个迷你但功能完备的 Kubernetes 集群。现在&#xff0c;我们就像一个拥有了一块崭新数字土地的农场主&#xff0c;是时…...

前端倒计时误差!

提示:记录工作中遇到的需求及解决办法 文章目录 前言一、误差从何而来?二、五大解决方案1. 动态校准法(基础版)2. Web Worker 计时3. 服务器时间同步4. Performance API 高精度计时5. 页面可见性API优化三、生产环境最佳实践四、终极解决方案架构前言 前几天听说公司某个项…...

2025 后端自学UNIAPP【项目实战:旅游项目】6、我的收藏页面

代码框架视图 1、先添加一个获取收藏景点的列表请求 【在文件my_api.js文件中添加】 // 引入公共的请求封装 import http from ./my_http.js// 登录接口&#xff08;适配服务端返回 Token&#xff09; export const login async (code, avatar) > {const res await http…...

今日学习:Spring线程池|并发修改异常|链路丢失|登录续期|VIP过期策略|数值类缓存

文章目录 优雅版线程池ThreadPoolTaskExecutor和ThreadPoolTaskExecutor的装饰器并发修改异常并发修改异常简介实现机制设计原因及意义 使用线程池造成的链路丢失问题线程池导致的链路丢失问题发生原因 常见解决方法更好的解决方法设计精妙之处 登录续期登录续期常见实现方式特…...

Unsafe Fileupload篇补充-木马的详细教程与木马分享(中国蚁剑方式)

在之前的皮卡丘靶场第九期Unsafe Fileupload篇中我们学习了木马的原理并且学了一个简单的木马文件 本期内容是为了更好的为大家解释木马&#xff08;服务器方面的&#xff09;的原理&#xff0c;连接&#xff0c;以及各种木马及连接工具的分享 文件木马&#xff1a;https://w…...

return this;返回的是谁

一个审批系统的示例来演示责任链模式的实现。假设公司需要处理不同金额的采购申请&#xff0c;不同级别的经理有不同的审批权限&#xff1a; // 抽象处理者&#xff1a;审批者 abstract class Approver {protected Approver successor; // 下一个处理者// 设置下一个处理者pub…...

在Mathematica中实现Newton-Raphson迭代的收敛时间算法(一般三次多项式)

考察一般的三次多项式&#xff0c;以r为参数&#xff1a; p[z_, r_] : z^3 (r - 1) z - r; roots[r_] : z /. Solve[p[z, r] 0, z]&#xff1b; 此多项式的根为&#xff1a; 尽管看起来这个多项式是特殊的&#xff0c;其实一般的三次多项式都是可以通过线性变换化为这个形式…...

【LeetCode】3309. 连接二进制表示可形成的最大数值(递归|回溯|位运算)

LeetCode 3309. 连接二进制表示可形成的最大数值&#xff08;中等&#xff09; 题目描述解题思路Java代码 题目描述 题目链接&#xff1a;LeetCode 3309. 连接二进制表示可形成的最大数值&#xff08;中等&#xff09; 给你一个长度为 3 的整数数组 nums。 现以某种顺序 连接…...

libfmt: 现代C++的格式化工具库介绍与酷炫功能

libfmt: 现代C的格式化工具库介绍与酷炫功能 libfmt 是一个开源的C格式化库&#xff0c;提供了高效、安全的文本格式化功能&#xff0c;是C20中引入的std::format的基础实现。它比传统的printf和iostream更安全、更灵活、性能更好。 基本介绍 主要特点 类型安全&#xff1a…...

阿里云Ubuntu 22.04 64位搭建Flask流程(亲测)

cd /home 进入home盘 安装虚拟环境&#xff1a; 1、安装virtualenv pip install virtualenv 2.创建新的虚拟环境&#xff1a; virtualenv myenv 3、激活虚拟环境&#xff08;激活环境可以在当前环境下安装包&#xff09; source myenv/bin/activate 此时&#xff0c;终端…...