动态路由协议

news2025/4/9 15:39:16

一、动态路由协议

动态路由协议,用在多个 Router 之间定期的、自动的、互相交换 Routes(路由信息,包含了网段信息、可达性信息、路径信息等),动态生成 Routing Table Entries,并最终达到全网的路由收敛,即:理想情况下,一个 Router 总是能够知道到达 IP Packets 的目标网络对应的下一跳应该如何转发。并且即便网络上的某个 Router 出现了故障,但只要有一个可绕行的其它路径,那么其他 Router 的 Table 就会自动设置,并选择一个可达的路径。

二、动态路由协议的基本工作原理

简而言之,动态路由协议就是 Routers 之间用于交换、计算和维护路由表的协议,其基本工作原理包括 4 个阶段:

  1. 邻居发现阶段运行了相同动态路由协议的 Routers 之间,首先需要建立一个用于交换 Routes 的对等点关系,这些 Routers 又称为 Neighbor Routers(邻居路由器)。
  2. 路由交换阶段发现邻居后,每个 Router 会主动通过广播或单薄的方式把自己的 Routes 发送给 Neighbor Routers。经过一段时间后,每个建立了对等点关系的 Routers 都拥有了整网的路由信息。
  3. 计算路由阶段每台 Router 都会自身的配置,运行各自的路由算法,计算出最终的路由表/树。
  4. 维护路由阶段为了感知突发的网络故障(例如;设备故障或线路中断等),Neighbor Routers 之间会发送周期性的心跳包,当心跳包超时时,就会认为邻居关系失效。此时 Router 需要自动维护路由表的更新,将故障路径移除。

 

三、动态路由协议的类型

1、从应用场景角度划分

  • IGP(Interior Gateway Protocol,内部网关协议)作用于同一个 AS(Autonomous System,自治系统)内部的动态路由协议。在 AS 内的所有 Routers 之间交换 Routes,用于实现 AS 内部的 Routers 之间的三层路由可达性。例如:RIP、OSPF、I-BGP 协议。
  • EGP( Exterior Gateway Protocol,外部网关协议)作用于不同 AS 之间的的动态路由协议。在不同 AS 之间的 Edge Routers(边界路由器)之间交换 Routes,用于实现 AS 之间的路径选择,所以也称为路径控制路由。例如:E-BGP 协议。

 

2、从技术实现角度划分

  • Distance Vector(距离矢量类型):是一种基于 “距离" 和 “方向" 的动态路由协议,如下图所示。该类型的路由协议有:RIP、BGP。 1. 距离:指示了到达目的网络的度量值,即:所要经过路由器的个数。 2. 方向:指示了到达目的网络的下一跳设备。 

 

  • Link State(链路状态类型):是一种基于 LSDB(链路状态数据库)的动态路由协议。LSDB 中存储了 一张完整的网络拓扑图,绘制拓扑图的步骤如下。该类型的路由协议有:OSPF、ISIS。
  1. LSA(Link State Advertisement,链路状态通告)泛洪:LSA Msg 中包含了 Router 已知的接口状态、接口 IP 地址、网络掩码、路由开销、网络类型等信息。每台 Router 都会将关于自身的本地直连链路的状态信息,以及将关于所有直连邻居的路由信息都宣告出去。
  2. LSDB(Link State Database,链路状态数据库)建立:收到 LSA Msg 的 Router 都会根据 LSA 提供的信息建立本地的 LSDB,知道收敛后,网络中的所有的 LS Router 都应该具有了相同的 LSDB。
  3. 建立最短路径树:Router 在 LSDB 的基础上使用最短路由优先算法进行路由计算,得到一棵以自己为 Root(根)的、无环路的、可到达每个网络的最短路径树。
  4. 路由计算:通过最短路径树得出到达每个目的网络的最优 Routes,并将这些 Routes 加载到 Routing Table 中。

 

可见,我们可以简单的理解为:Distance Vector 类型 Routes 提供的是 “路标”,那么 Link State 类型 Routes 提供的就是 “地图”。

 

四、常见的动态路由协议 

 

1、RIP(IGP、距离矢量类型):是最早期的路由协议,为小型 IGP 网络提供。

  • 配置简单;
  • 网络收敛慢;
  • 用于小型网络,现在常见于实验室环境。

2、OSPFv3 和 ISIS(IGP、链路状态类型):为大中型 IGP 网络提供。

  • IGP 整网地图绘制,可以精确的知道网络中每一条链路的状态,例如:状态是 UP 还是 Down,链路的相对带宽大小是多少等等。以此来保证了无环路,
  • 使用最短路径优先算法来计算到达所有目的网络的最佳路径。
  • 缺点在于分享的信息太多、太精确,安全性缺失,计算芯片负载高。

3、BGPv4(IGP、EGP、距离矢量类型):最初为 EGP 广域网络提供,后来也可用于大型 IGP 网络。

  • 作为 EGP 时,使用 AS 的数量作为距离度量单位,而不是使用 Router 的数量。
  • 有强大的路径控制功能,例如:路由策略、路由过滤,可以对广域网的流量实现优化与调度。
  • 设计之初,就是用于容纳超大容量的路由条目。

 

五、动态路由协议的性能指标

不同的动态路由协议,具有有不同的特点。常规的性能指标如下:

  1. 协议的路由计算正确性杜绝出现路由环路。由于 Link State 类型具有整网地图,所以比 Distance Vector 类型更优。
  2. 协议的路由收敛速度整网路由器的路由表快速达到一致的状态。收敛速度越快,就意味着当网络拓扑结构发生变化时,路由器能够更快的感知到,并及时更新相应的路由信息。
  3. 协议所占的系统开销运行路由协议所占用的路由器系统资源,例如:CPU 、内存等。Link State 类型的开销大于 Distance Vector 类型。
  4. 协议适用的网络规模OSPF 的实现机制限定了其可以应用在几百台路由器的中大规模网络场景中;而 BGP 理论上能够管理全世界所有的路由器,其所管理的网络规模大小只受系统资源的限制。

 

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

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

相关文章

Java项目:123SSM高校运动会信息管理系统

博主主页:Java旅途 简介:分享计算机知识、学习路线、系统源码及教程 文末获取源码 一、项目介绍 高校运动会信息管理系统基于SpringSpringMVCMybatis开发,主要用来管理高校运动会信息,系统分为管理员何运动员两种角色。系统主要功…

AI在广告中的应用——预测性定位和调整

营销人员的工作就是在恰当的时间将适合的产品呈现在消费者面前,从而增加他们购买的可能性。随着时间的推移,营销人员能够深入挖掘越来越精准的客户细分市场,他们不仅具备了实现上述目标的能力,而且这种能力还在呈指数级提升。在AI…

如何将github copilot当gpt4用

现在写代码已经离不开ai辅助了我用的是github copilot,一方面是因为它和vscode结合得比较好,另一方面就是copilot chat了。可以在不切换工具的情况下,问它问题,在copilot chat还在内测阶段的时候我就申请使用了(现在已…

【现代密码学】笔记9-10.3-- 公钥(非对称加密)、混合加密理论《introduction to modern cryphtography》

【现代密码学】笔记9-10.3-- 公钥(非对称加密)、混合加密理论《introduction to modern cryphtography》 写在最前面8.1 公钥加密理论随机预言机模型(Random Oracle Model,ROM) 写在最前面 主要在 哈工大密码学课程 张…

Python多线程爬虫——数据分析项目实现详解

前言 「作者主页」:雪碧有白泡泡 「个人网站」:雪碧的个人网站 ChatGPT体验地址 文章目录 前言爬虫获取cookie网站爬取与启动CSDN爬虫爬虫启动将爬取内容存到文件中 多线程爬虫选择要爬取的用户 线程池 爬虫 爬虫是指一种自动化程序,能够模…

Java基础知识整理,驼峰规则、流程控制、自增自减

写在开头 本文接着上一篇文章续写哈。Java基础知识整理,注释、关键字、运算符 在这一篇文章中我们总结了包括注释、关键字、运算符的Java基础知识点,今天继续来聊一聊命名规则(驼峰)、流程控制、自增自减。 一、命名规则 上一…

pygame学习(三)——支持多种类型的事件

大家好!我是码银🥰 欢迎关注🥰: CSDN:码银 公众号:码银学编程 实时事件循环 为了保证程序的持续刷新、保持打开的状态,我们会创建一个无限循环,通常使用的是while语句,w…

第二百六十九回

文章目录 概念介绍设置方法示例代码内容总结 我们在上一章回中介绍了Card Widget相关的内容,本章回中将介绍国际化设置.闲话休提,让我们一起Talk Flutter吧。 概念介绍 我们在这里说的国际化设置是指在App设置相关操作,这样可以让不同国家的…

关于VScode的这个ssh的配置的经验

1.首先,我是因为重装了ubantu系统,不得不重新配置ssh 2.第一步,在本机的终端安装ssh插件: (1) (2)restart开启这个ssh端口 3.然后,就在vscode里面,安装哪个…

【Rust学习】安装Rust环境

本笔记为了记录学习Rust过程,内容如有错误请大佬指教 使用IDE:vs code 参考教程:菜鸟教程链接: 菜鸟教程链接: Rust学习 Rust入门安装Rust编译环境Rust 编译工具 构建Rust 工程目录 Rust入门 安装Rust编译环境 因为我已经安装过VSCode了&am…

【ArcGIS遇上Python】ArcGIS Python批量筛选多个shp中指定字段值的图斑(以土地利用数据为例)

文章目录 一、案例分析二、提取效果二、代码运行效果三、Python代码四、数据及代码下载一、案例分析 以土地利用数据为例,提取多个shp数据中的旱地。 二、提取效果 原始土地利用数据: 属性表: 提取的旱地:(以图层名称+地类名称命名)

mysql — 生产环境发布DDL之避坑操作onlineDDL

一、Mysql onLineDDL特性 1、Mysql 5.6 DDL MySQL 的 DDL(Data Definition Language) 包括增减字段、增减索引等操作。MySQL Online DDL 功能从 5.6 版本开始正式引入,发展到现在的 8.0 版本,那么在 MySQL 5.6 之前,MySQL 的 DDL 操作会按照…

Vue高级(二)

3.搭建vuex环境 创建文件:src/store/index.js //引入Vue核心库import Vue from vue//引入Vueximport Vuex from vuex//应用Vuex插件Vue.use(Vuex)//准备actions对象——响应组件中用户的动作const actions {}//准备mutations对象——修改state中的数据const mutat…

近4w字吐血整理!只要你认真看完【C++编程核心知识】分分钟吊打面试官(包含:内存、函数、引用、类与对象、文件操作)

🌈个人主页:godspeed_lucip 🔥 系列专栏:C从基础到进阶 🏆🏆关注博主,随时获取更多关于C的优质内容!🏆🏆 C核心编程🌏1 内存分区模型&#x1f384…

mac查看maven版本报错:The JAVA_HOME environment variable is not defined correctly

终端输入mvn -version报错: The JAVA_HOME environment variable is not defined correctly, this environment variable is needed to run this program. Java环境变量的问题,打开bash_profile查看 open ~/.bash_profile export JAVA_8_HOME/Library/Java/JavaVirtualMachine…

HCIA——12题目-1章选择

学习目标: 计算机网络 1.掌握计算机网络的基本概念、基本原理和基本方法。 2.掌握计算机网络的体系结构和典型网络协议,了解典型网络设备的组成和特点,理解典型网络设备的工作原理。 3.能够运用计算机网络的基本概念、基本原理和基本方法进行…

GaussDB(DWS)查询优化技术大揭秘

GaussDB(DWS)查询优化技术大揭秘 大数据时代,数据量呈爆发式增长,经常面临百亿、千亿数据查询场景,当数据仓库数据量较大、SQL语句执行效率低时,数据仓库性能会受到影响。本文将深入讲解在GaussDB(DWS)中如何进行表结构设计&#…

解密IP代理池:匿名访问与反爬虫的利器

当今互联网环境中,为了应对反爬虫、匿名访问或绕过某些地域限制等需求,IP代理池成为了一种常用的解决方案。IP代理池是一个包含多个可用代理IP地址的集合,可以通过该代理池随机选择可用IP地址来进行网络请求。 IP代理池是一组可用的代理IP地址…

实验八 排序算法的实现与分析

实验八 排序算法的实现与分析 一.实验目的 1.掌握常用的排序方法,并掌握用高级语言实现排序算法的方法; 2.深刻理解排序的定义和各种排序方法的特点,并能加以灵活应用; 3.了解各种方法的排序过程及其时间复杂度的分析方…

10- OpenCV:基本阈值操作(Threshold)

目录 1、图像阈值 2、阈值类型 3、代码演示 1、图像阈值 (1)图像阈值(threshold)含义:是将图像中的像素值划分为不同类别的一种处理方法。通过设定一个特定的阈值,将像素值与阈值进行比较,根…