动态路由协议简单理解

动态路由协议简单理解一 什么是路由 nbsp nbsp nbsp nbsp nbsp nbsp 在一个网络中 路由是一个非常基本的概念 当路由器 或者其他三层设备 收到一个 IP 数据包 路由器会找出报文中的 IP 头里的目的 IP 地址 然后拿着目的 IP 地址到自己的路由表中进行查找 找到 最匹配 的路由条目后 将数据包根据路由条目所指示的出接口或下一跳 IP 转发出去 随着网络路由的发展 路由的种类有很多 如静态路由 动态路由 缺省路由等 二 路由协议的分类 nbsp nbsp nbsp nbsp nbsp amp nb

一、什么是路由?

      在一个网络中,路由是一个非常基本的概念,当路由器(或者其他三层设备)收到一个IP数据包,路由器会找出报文中的IP头里的目的IP地址,然后拿着目的IP地址到自己的路由表中进行查找,找到“最匹配”的路由条目后,将数据包根据路由条目所指示的出接口或下一跳IP转发出去。随着网络路由的发展,路由的种类有很多,如静态路由、动态路由、缺省路由等。

二、路由协议的分类


图1 路由协议的分类

(1) 按用途分类
      动态路由协议按用途分类可以分为内部网关协议(Interior Gateway Protocol,简称IGP)和外部网关协议(Exterior Gateway Protocol,简称EGP)。一个Internet网可以被分成多个域或多个自治系统,各自治系统通过一个核心路由器连到主干网上,每个自治系统都有自己的路由技术,对不同的自治系统路由技术是不相同的。所谓内部网关协议,就是指用于自治系统内部的路由协议,而外部网关协议,就是指用于自治系统间接口上的单独的协议。

(2) 按操作分类
      动态路由协议按操作分类可以分为距离矢量路由协议、链路状态路由协议或路径矢量路由协议。其中距离矢量路由协议和链路状态路由协议属于内部网关协议,而路径矢量路由协议则属于外部网关协议。

(3) 按行为分类
      动态路由协议按行为分类可以分为有类路由协议和无类路由协议,他们二者本质区别就是在发送路由更新时是否发送子网掩码,有类路由协议不会在路由更新中发送子网掩码信息,而无类路由协议在路由更新中包含子网掩码信息。目前,仅RIPv1和IGRP是有类路由协议,所有其他IPv4和IPv6路由协议都是无类路由协议。

三、路由协议的使用

      在学习的过程中,面对众多的动态路由协议,我开始思考,这么多的路由协议在不同的网络中应该如何选择呢?为了解决这个疑问,就需要对这些动态路由协议的特性和优缺点进行比较,并根据实际情况选择出一个最佳方案。

(1) IGP和EGP
      首先,是内部网关协议和外部网关协议,对于这两个协议,根据它们各自的用途,很容易做出判断:在公司、组织、服务提供商各自的内部网络中使用IGP,而在服务提供商、公司和大型企业之间则使用EGP实现互联。目前,边界网关协议(BGP)是目前唯一可行的EGP,而对于IGP就有很多的选择如RIP、EIGRP、OSPF和IS-IS等。

(2) 距离矢量路由协议和链路状态路由协议
      根据路由算法,动态路由协议可分为距离向量路由协议和链路状态路由协议。距离矢量路由协议基于Bellman-Ford算法,主要有RIP、IGRP;链路状态路由协议基于Dijkstra算法,即最短优先路径算法,如OSPF。在距离向量路由协议中,路由器将部分或全部的路由表传递给与其相邻的路由器;而在链路状态路由协议中,路由器将链路状态信息传递给在同一区域内的所有路由器。
距离矢量路由协议通过向其邻居发送自己的路由表的方式来维护自己本身的路由信息,有跳数限制,适合运用于小型网络中。链路状态路由协议从网络或者网络的限定区域内的所有其他路由器处收集信息然后在不依赖其他路由器的情况下计算到达各个网络的路由,收敛速度快,适合在大型网络中运行。

(3) RIPv2和EIGRP
      RIPv2和EIGRP均为距离矢量路由协议。RIP是路由器生产商之间使用的第一个开放标准,是最广泛的路由协议,在所有IP路由平台上都可以得到。RIP有两个版本:RIPv1和RIPv2,它们均基于经典的距离向量路由算法,最大跳数为15跳。RIP具有算法简单、可以与不同厂商的路由器互联的特点,但在路径较多时收敛速度慢,广播路由信息时占用的带宽资源较多,它适用于网络拓扑结构相对简单的小型网络中。
IGRP为第一代思科专有协议,是一种动态的、长跨度的路由协议,最大跳数为255跳,与RIP相比,IGRP的收敛时间更长,但传输路由信息所需的带宽减少,适合较为复杂的网络。EIGRP为IGRP的增强版,它使用与IGRP相同的路由算法,但它集成了链路状态路由协议和距离向量路由协议的长处,同时加入扩散更新算法(DUAL)具有快速收敛、减少了带宽的消耗、减少路由器CPU的利用等特点。

(4) OSPF和IS-IS
      OSPF和IS-IS是链路状态路由协议的两个最典型的代表,都采用STP算法来计算路由;开放式最短路径优先(OSPF)协议是一种为IP网络开发的内部网关路由选择协议,它能够在自己的链路状态数据库内表示整个网络,这极大地减少了收敛时间,并且支持大型异构网络的互联,具有快速收敛、区域划分、无跳数限制、安全性好等优点。中间系统到中间系统(IS-IS)是由国际标准化组织制定最初是为OSI协议簇设计的,后来添加了对IP网络的支持。ISIS和OSPF从基本功能与操作上都非常相似,但也存在着差异,如封装位置、划分边界、支持路由等。

四、总结

      以上对各类路由协议的描述,对于在不同的网络中选择何种路由协议这个问题可以得出初步的结论:在公司、组织各自的内部网络中使用IGP,而在服务提供商、公司和大型企业之间使用EGP实现互联。在IGP的配置中,如果网络规模较小,路由器的数量小于或等于15个,则可以考虑使用RIP或IGRP。对于小规模的网络,可以使用RIPv2协议;而对于中型的网络,使用EIGRP协议则更为合适;如果是大型网络,则需要考虑使用OSPF协议。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/203113.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月19日 下午10:33
下一篇 2026年3月19日 下午10:33


相关推荐

  • 浏览器扩展程序安装指南在哪_360浏览器扩展在哪里

    浏览器扩展程序安装指南在哪_360浏览器扩展在哪里小助手浏览器扩展程序安装指南

    2022年10月7日
    6
  • js中offsetParent详解

    js中offsetParent详解1 offsetParent 返回元素的偏移容器 定义 offsetParent 就是距离该子元素最近的进行过定位的父元素 position absolute relative fixed 如果其父元素中不存在定位则 offsetParent 为 body 元素 2 根据定义分别存在以下几种情况 1 元素自身有 fixed 定位 父元素不存在定位 则 offsetParent 的结果为 null firefox 中为 body 其他浏览器返回为 null 2 元素自身无 fixed 定位 且父元素也不存在定位

    2026年3月19日
    3
  • linux用户与组的管理(命令加入、手动加入、加入组、用户之间的切换)

    linux用户与组的管理(命令加入、手动加入、加入组、用户之间的切换)

    2021年12月14日
    50
  • 记录一次C#使用JWT单点登录

    记录一次C#使用JWT单点登录好久没更新了,最近确实比较忙,现在弄完后,第一时间来记录一下最近学到的一些东西JWT单点登录一、简单介绍 JWT全称是JSONWebToken,是一种是目前最流行的跨域身份验证解决方案。为了网络应用环境间传递声明而执行的一种基于JSON的开发标准(RFC7519),该token被设计为紧凑且安全的,特别适用于分布式站点的单点登陆(SSO)场景。JWT的声明一般被用来在身份提供者和服务提供者间传递被认证的用户身份信息,以便于从资源服务器获取资源,该token也可直接被用于认证,也可被加.

    2022年5月20日
    73
  • Spring和SpringMVC以及SpringBoot的区别

    Spring和SpringMVC以及SpringBoot的区别Spring是一个开源框架,为简化企业级应用开发而生。Spring可以是使简单的JavaBean实现以前只有EJB才能实现的功能。Spring是一个IOC和AOP容器框架。Spring容器的主要核心是:控制反转(IOC),传统的java开发模式中,当需要一个对象时,我们会自己使用new或者getInstance等直接或者间接调用构造方法创建一个对象。而在…

    2022年5月20日
    45
  • Python操作CSV格式文件

    Python操作CSV格式文件(一)CSV格式文件1.说明CSV是一种以逗号分隔数值的文件类型,在数据库或电子表格中,常见的导入导出文件格式就是CSV格式,CSV格式存储数据通常以纯文本的方式存数数据表。(二)CSV库操作csv格式文本操作一下表格数据:1.读取表头的2中方式#方式一importcsvwithopen(“D:\\test.csv”)asf:read

    2022年7月21日
    17

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号