内部网关协议_路由信息协议RIP_开放路径优先OSPF协议_基本知识

news2025/1/13 10:07:01

目录:
因特网路由选择协议概述
路由信息协议RIP
开放路径优先OSPF协议

因特网路由选择协议概述

一.路由选择分类

静态路由选择和动态路由选择

静态路由选择:

  • 采用人工配置的方式给路由器添加网络路由、默认路由和特定主机路由等路由条目。
  • 静态路由选择简单、开销小,但不能及时适应网络状态(流量、拓扑等)的变化。
  • 静态路由选择一般只在小规模网络中采用。

动态路由选择:

  • 路由器通过路由选择协议自动获取路由信息。
  • 动态路由选择比较复杂、开销比较大,但能较好地适应网络状态的变化。
  • 动态路由选择适用于大规模网络。

二.因特网采用分层次的路由选择协议

自适应:

  • 因特网采用动态路由选择,能较好地适应网络状态的变化。

分布式:

  • 因特网中的各路由器通过相互间的信息交互,共同完成路由信息的获取和更新。

分层次:

  • 将整个因特网划分为许多较小的自治系统(Autonomous System,AS)。在自治系统内部和外部采用不同类别的路由选择协议,分别进行路由选择

三.域内路由和域间路由

自治系统内部的路由选择成为域间路由选择,自治系统之间的路由选择称为域间路由选择.

内部网关协议(IGP):
一个自治系统内部使用的路由选择协议,如RIP和OSPF

外部网关协议(EGP):
不同的自治系统之间使用的路由选择协议.

注意:

外部网关协议EGP和内部网关协议IGP只是路由选择协议的分类名称,而不是具体的路由选择协议。

路由信息协议RIP

一.路由信息协议RIP的相关基本概念

  • RIP要求自治系统AS内的每一个路由器,都要维护从它自己到AS内其他每一个网络的距离记录。这是一组距离,称为距离向量

  • RIP使用跳数(Hop Count)作为度量(Metric)来衡量到达目的网络的距离。

    • RIP将路由器到直连网络距离定义为1
    • RIP将路由器到非直连网络距离定义为所经过的路由器数加1
    • RIP允许一条路径最多只能包含15个路由器,距离等于16时相当于不可达。因此RIP只适用于小型互联网
      在这里插入图片描述
  • RIP认为好的路由就是“距离短”的路由,也就是所通过路由器数量最少的路由

  • 当到达同一目的网络有多条RIP距离相等的路由时,可以进行等价负载均衡,也就是将通信量均衡地分布到多条等价的路径上。

二.RIP具有的三个重要特点

和谁交换信息?

仅和相邻路由器交换信息。

交换什么信息?

路由器自己的路由表。 即本路由器到所在自治系统AS中各网络的最短RIP距离,以及到各网络应经过的下一跳路由器。

何时交换信息?

周期性交换(例如,每隔约30秒)。 为了加快RIP的收敛速度,当网络拓扑发生变化时,路由器要及时向相邻路由器通告拓扑变化后的路由信息,这称为触发更新。

三.RIP距离向量算法

C给D发送路由表更新信息

在这里插入图片描述

图1 最开始发送时的路由表状态
图2 更新结束D的状态
  • 除了上述RIP路由条目更新规则,在RIP的距离向量算法中还包含以下一些时间参数:
    • 路由器每隔大约30秒向其所有相邻路由器发送路由更新报文。
    • 若180秒(默认)没有收到某条路由条目的更新报文,则把该路由条目标记为无效(即把RIP距离设置为16,表示不可达),若再过一段时间(如120秒),还没有收到该路由条目的更新报文,则将该路由条目从路由表中删除。

四.RIP存在的问题

坏消息传播的慢
在这里插入图片描述
图解:

当N1与R1之间发生故障时,R1路由表更新为到N1=16,表示不可达,当他刚要给R2更新的时候,R2先发送了更新报文,把R1中的N1改成了 2,R1,此时R1再给R2发送的就是3,R2,如此循环下去,直到=16为止,这个过程会浪费很多时间

五.RIP的优缺点

优点:

  • 实现简单,路由器开销小。
  • 如果一个路由器发现了RIP距离更短的路由,那么这种更新信息就传播得很快,即“好消息传播得快”。

缺点:

  • RIP限制了最大RIP距离为15,这就限制了使用RIP的自治系统AS的规模。
  • 相邻路由器之间交换的路由信息是路由器中的完整路由表,因而随着网络规模的扩大,开销也随之增大。
  • “坏消息传播得慢”,使更新过程的收敛时间过长。因此,对于规模较大的自治系统AS,应当使用OSPF协议。

开放路径优先OSPF协议

引入:开放最短路径优先(Open Shortest Path First,OSPF)协议是为了克服路由信息协议RIP的缺点从而开发出来的。

一.OSPF的相关基本概念

  • OSPF是基于链路状态的,而不像RIP是基于距离向量的。
  • OSPF基于链路状态并采用最短路径算法计算路由,从算法上保证了不会产生路由环路。

链路状态:

  • 思科路由器中OSPF协议计算代价的方法是:100Mbls除以链路带宽计算结果小于1的值仍记为1,大于1且有小数的,舍去小数。

OSPF路由器邻居关系的建立和维护:

  • OSPF相邻路由器之间通过交互问候(Hello)分组来建立和维护邻居关系。
    • 问候(Hello)分组封装在IP数据报中,发往组播地址224.0.0.5。IP数据报首部中的协议号字段的取值为89,表明IP数据报的数据载荷为OSPF分组。
    • 问候(Hello)分组的发送周期为10秒
    • 40秒未收到来自邻居路由器的问候(Hellc
      则认为邻居路由器不可达。
    • 每个路由器都会建立一张邻居表

链路状态通告:

  • 使用OSPF的每个路由器都会产生链路状态通告(Link State Advertisement,LSA)。
  • LSA中包含以下两类链路状态信息:
    • 直连网络的链路状态信息
    • 邻居路由器的链路状态信息

链路状态更新分组:

  • 链路状态通告LSA被封装在链路状态更新(Link State Update,LSU)分组中,采用可靠的洪泛法(Flooding)进行发送。
    • 洪泛法的要点是路由器向自己所有的邻居路由器发送链路状态更新分组,收到该分组的各路由器又
      将该分组转发给自己所有的邻居路由器(但其上游路由器除外),以此类推。
    • 可靠是指收到链路状态更新分组后要发送确认,收到重复的更新分组无需再次转发,但要发送一次确认。
      在这里插入图片描述

链路状态数据库:

  • 使用OSPF的每一个路由器都有一个链路状态数据库(Link State Database,LSDB),用于存储链路状态通告LSA
  • 通过各路由器洪泛发送封装有各自链路状态通告LSA的链路状态更新分组LSU,各路由器的链路状态数据库LSDB最终将达到一致

为了确保链路状态数据库与全网的状态保持一致,OSPF还规定每隔一段时间(如30分钟)就刷新一次数据库中的链路状态.由于一个路由器链路状态只涉及与相邻路由器的连通状态,因而与整个互联网的规模并无直接关系.因此,当互联网规模很大时,OSPF要比RIP好得多,而且OSPF协议没有坏消息传播的慢的问题.

二.OSPF的五种分组类型

在这里插入图片描述

三.OSPF的基本工作过程

在这里插入图片描述

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

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

相关文章

Seaborn画图颜色和给定的RGB hex code不一致

使用以下代码画图: import seaborn as sns import matplotlib.pyplot as plt plt.figure(dpi150) x [A,B,C,D] y [164, 86, 126, 53] sns.barplot(xx, yy, color#3a923a) 得到的颜色如下图所示: 这是因为seaborn默认降低了颜色的饱和度,即…

Android 10.0 mtp模式下连接PC后只显示指定文件夹功能实现

1. 前言 在android10.0的系统定制化开发中,对于usb作为otg连接电脑时,在mtp模式下会作为一个存储器在电脑端显示,作为电脑的 一个盘符,来显示设备的内部存储的文件,所以说如果要对设备内部的资料做保密处理的时候,需要在mtp模式下不显示某些 文件夹,接下来就分析下相关…

《QT从基础到进阶·三十七》QWidget实现左侧导航栏效果

NavigationBarPlugin插件类实现了对左侧导航栏的管理,我们可以在导航栏插件中添加界面,并用鼠标点击导航栏能够切换对应的界面。 源码在文章末尾 实现效果如下: NavigationBarPlugin实现的接口如下: class NAVIGATIONBAR_EXP…

centos7安装MySQL—以MySQL5.7.30为例

centos7安装MySQL—以MySQL5.7.30为例 本文以MySQL5.7.30为例。 官网下载 进入MySQL官网:https://www.mysql.com/ 点击DOWNLOADS 点击链接; 点击如上链接: 选择对应版本: 点击下载。 安装 将下载后的安装包上传到/usr/local下…

Linux上通过SSL/TLS和start tls连接到LDAP服务器

一,大致流程。 1.首先在Linux上搭建一个LDAP服务器 2.在LDAP服务器上安装CA证书,服务器证书,因为SSL/TLS,start tls都属于机密通信,需要客户端和服务器都存在一个相同的证书认证双方的身份。3.安装phpldapadmin工具&am…

前缀和——DP35 【模板】二维前缀和

文章目录 🍎1. 题目🍒2. 算法原理🍅3. 代码实现 🍎1. 题目 题目链接:【模板】二维前缀和_牛客题霸_牛客网 (nowcoder.com) 描述 给你一个 n 行 m 列的矩阵 A ,下标从1开始。 接下来有 q 次查询&#xff0…

酷开科技OS——Coolita,让智能大屏走向国际

10月23日,2023中国—东盟视听传播论坛在南宁举行。作为第五届中国—东盟视听周重要活动之一,本次论坛以“共享新成果、共创新视听、共建新家园”为主题。来自中国和东盟的300余名专家学者、业界代表通过主旨演讲、主题发言、圆桌对话等方式进行深入探讨&…

python趣味编程-5分钟实现一个太空大战游戏(含源码、步骤讲解)

飞机战争游戏系统项目是使用Python编程语言开发的,是一个简单的桌面应用程序。 Python 中的飞机战争游戏使用pygame导入和随机导入。 Pygame 是一组跨平台的 Python 模块,专为编写视频游戏而设计。它包括设计用于 Python 编程语言的计算机图形和声音库。

飞桨——总结PPOCRLabel中遇到的坑

操作系统:win10 python环境:python3.9 paddleocr项目版本:2.7 1.报错:ModuleNotFoundError: No module named Polygon(已解决) 已解决所以没有复现报错内容 尝试方法一:直接使用pip命令安装&…

软件工程--软件建模--结构化方法通俗语言总结(暴肝超详解)(包含数据流图、数据字典、ER图、结构化设计和优化......)

目录 结构化分析 数据流图DFD 定义数据字典 实体关系图(E-R图) 结构化设计 变换映射 事务映射 优化结构设计 实例分析 详细设计(过程设计) 结构化方法是一种系统化开发软件的方法,该方法基于模块化的思想&am…

vue3项目中使用富文本编辑器

前言 适配 Vue3 的富文本插件不多,我看了很多插件官网,也有很多写的非常棒的,有UI非常优雅让人耳目一新的,也有功能非常全面的。 如: Quill,简单易用,功能全面。editorjs,UI极其优…

【OpenCV实现图像:使用OpenCV生成拼图效果】

文章目录 概要通用配置不考虑间隔代码实现考虑间隔代码实现小结 概要 概要: 拼图效果是一种将图像切割为相邻正方形并重新排列的艺术效果。在生成拼图效果时,可以考虑不同的模式,包括是否考虑间隔和如何处理不能整除的部分。 不考虑间隔&a…

〖大前端 - 基础入门三大核心之JS篇㊶〗- DOM事件传播和事件监听方法addEventListener()

说明:该文属于 大前端全栈架构白宝书专栏,目前阶段免费,如需要项目实战或者是体系化资源,文末名片加V!作者:不渴望力量的哈士奇(哈哥),十余年工作经验, 从事过全栈研发、产品经理等工作&#xf…

华清远见嵌入式学习——网络编程——作业3

目录 作业要求&#xff1a;基于UDP的TFTP文件传输 代码 下载功能效果图​编辑 上传功能效果图 思维导图 模拟面试题和答案&#xff08;定期更新&#xff09; 作业要求&#xff1a;基于UDP的TFTP文件传输 完成文件的上传和下载功能 代码 #include<myhead.h>//实现…

CSS特效016:天窗扬起合上的效果

CSS常用示例100专栏目录 本专栏记录的是经常使用的CSS示例与技巧&#xff0c;主要包含CSS布局&#xff0c;CSS特效&#xff0c;CSS花边信息三部分内容。其中CSS布局主要是列出一些常用的CSS布局信息点&#xff0c;CSS特效主要是一些动画示例&#xff0c;CSS花边是描述了一些CSS…

在PyCharm中正确设置Python项目

大家好&#xff0c;在Mac和Linux都支持Python&#xff0c;但许多开发者发现正确设置Python项目很困难。本文汇总了多平台中运行Python的方法&#xff0c;提高编程的效率&#xff0c;如下所示&#xff1a; 使用命令行运行Python。 在PyCharm&#xff08;免费社区版&#xff09;…

微信小程序蓝牙连接 uniApp蓝牙连接设备

蓝牙列表期待效果 代码 <template><view class"bluetooth-list"><view class"align-items option" style"justify-content: space-between;" v-for"item in bluetoothList" :key"item.deviceId"><vie…

java基础-集合

1、集合 在java中&#xff0c;集合&#xff08;Collection&#xff09;指的是一组数据容器&#xff0c;它可以存储多个对象&#xff0c;并且允许用户通过一些方法来访问与操作这些对象。j 集合的实现原理都基于数据结构和算法&#xff0c;如下&#xff1a; 数据结构&#xff1…

[ 云计算 | AWS 实践 ] 基于 Amazon S3 协议搭建个人云存储服务

本文收录于【#云计算入门与实践 - AWS】专栏中&#xff0c;收录 AWS 入门与实践相关博文。 本文同步于个人公众号&#xff1a;【云计算洞察】 更多关于云计算技术内容敬请关注&#xff1a;CSDN【#云计算入门与实践 - AWS】专栏。 本系列已更新博文&#xff1a; [ 云计算 | …

Redis-Redis缓存高可用集群

1、Redis集群方案比较 哨兵模式 在redis3.0以前的版本要实现集群一般是借助哨兵sentinel工具来监控master节点的状态&#xff0c;如果master节点异常&#xff0c;则会做主从切换&#xff0c;将某一台slave作为master&#xff0c;哨兵的配置略微复杂&#xff0c;并且性能和高可…