前文我们了解了静态路由的相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/14965433.html;今天我们来聊一聊动态路由相关概念;

  首先我们要清楚什么是动态路由?从字面上个人的理解,动态是指能够根据某种条件的变化结果也随之自动的发生变化;静态是指当某种条件发生变化,而结果不会随之变化(静止不动);对于路由也是一样的,静态路由就是指管理员手动配置的路由信息,该路由信息不会根据网络拓扑的变化而自动变化,当网络拓扑发生变化,必须由管理员手动的更新其路由信息;和静态路由相反的是动态路由,该路由信息具有两个特点,第一是不需要管理员手动配置路由信息,而是从其他路由器哪里根据某种动态路由协议学习过来的路由信息;其次该路由能够感知网络拓扑的变化,当网络拓扑发生变化,对应的路由信息能够根据拓扑的变化而变化;

  从上述的描述中,动态路由的生成是基于某种动态路由协议,也就是说只有运行相同动态路由协议的路由器才能相互学习到对方的路由信息;那什么是路由协议呢?其实我们可以把路由协议理解为路由器之间交互信息的一种语言,其作用就是用来共享路由信息,维护路由表,提供最佳转发路径;

  路由协议总览

  提示:上图主要描述了路由协议的发展史以及根据不同算法对其分类;  

  提示:上图主要把路由协议进行了分类,从作用范围来划分,分为内部网关协议igp和外部网关协议egp;而内部网关协议igp中,有可以根据其算法的不同分为距离矢量协议和链路状态协议,其实除此之外还有路径矢量协议(主要是bgp用的算法);

  路由协议分类:根据作用范围分类

  提示:我们可把路由协议分为IGP和EGP,IGP(interior gateway protocol)内部网关协议,用于一个as内部交换路由信息,比如常见的igp路由协议有RIP、OSPF、IS-IS;EGP(exterior gateway protocol)外部网关协议,用于多个as之间交换路由信息,如BGP协议;那什么是AS呢?AS是autonomous system自制系统,所谓自制系统就是处于单个管理机制下的网络,比如一个企业,电信,联通,移动等;

  路由协议分类:根据协议算法分类

  DV(distance-vector):距离矢量;简单的我们可以把距离矢量理解为路牌,我们要到某地去,路牌可以告诉我们前方怎么这么走,当并不能告诉我们前方是否还要经过其他路牌,其他路牌上的信息等;所以我们只有根据路牌到达对应的位置后,在查看其它路牌信息,最终我们是可以根据路牌的指引到达目的地;类比路由器如下图

  提示:当R1要访问subnet X 的时候,如果各个路由器之间都运行的是距离矢量算法的路由协议,那么对于R1来说它只会收到R2,R5和R7发送到路由信息;也就是说R1只知道R2,R5和R7的存在,并不知道其他路由器的存在,而对于R1的选路规则就只有一条,看那个路由器发送过来的路由信息跳数最少,它就选择哪一条;如上图R1要到subnet X ,R1肯定走R7,因为R7告诉R1,走我这里只有2跳;从上述的描述不难想象基于距离矢量算法的路由协议,它并不了解整个网络拓扑结构,它依靠和自己直连的路由器发送过来的路由信息;其次路由器选路是根据对方发送到跳数来进行判别那条路最优,本质上就不是一个好的选路策略;因为判断一条路是否最优并不是只有跳数这一个条件;比如链路的带宽,开销等等都决定了路由是否最优;常见的基于距离矢量算法的路由协议有RIP 、EIGRP;

  LS(link-state)链路状态;从字面上理解,这种算法的路由协议并不是发送的是路由信息,而是描述链路状态的一些信息(LSA链路状态通告),多台路由器根据链路状态通告信息结合spf(shortest path first)z最短路径优先算法计算出对应的路由信息;我们可以理解为现实生活中的地图;lsa就好比交通广播之类的信息,我们可以根据交通广播通告的路况信息,从而知道去某地的路况是否良好,这样走可以最节省时间,路径最短等等;如下图

  提示:R1要访问172.16.3.1/24网络,对于整个网络中的路由器来说,它们都知道R8的存在,因为R8的链路状态通告是全网转发的;并且每台路由器都会发送las告诉其他路由器本路由器可以到达那些网络,链路开销以及状态信息等;所以对于上图的每个路由器来说,他们都分别了解全网大拓扑结构;对于R1来说,它的选路就不是根据其跳数来选,而是根据收到的lsa,根据SPF算法自动算出去往172.16.3.0/24的路由,并存入路由表中;所以基于链路状态结合SPF算法的路由协议相比距离矢量算法的路由协议要更加了解整个网络拓扑结构;常见的路由协议ospf、is-is ;

  路由协议分类:根据发送的更新是否携带掩码

  有类(classful):ip地址的分类默认分为abcde,其中掩码为8的我们称为a类ip地址,掩码为16的是b类,掩码是24的为c类;所谓有类是指发送更新不携带掩码;我们知道一个网络如果不携带掩码我们是不能计算器网络id的,所以这里的不带掩码是指自带默认分类的掩码,如掩码为8/16/24之类的;有类的路由协议有RIPv1、IGRP;

  无类(classless):无类和有类相反,它是不管是默认掩码还是其他什么掩码,它在发送更新时都会携带掩码;无类的路由协议有RIPv2、EIGRP、OSPF、IS-IS、BGP;

  有类和无类的更新

  提示:有类路由协议的更新默认不携带掩码,它只能依靠默认的ABCip地址分类来确定网络,相比无类存在,当一个数据包要去172.16.3.0/24的网络时,对于有类来讲,它只会更新172.16.0.0/16;这样一来对于R2来说不管走哪一边都一样,因为都是172.16.0.0/16(等价路由),这样就可能导致数据包无法到达目标网络的情况;而对于无类路由协议来讲,就不存在上述的问题,因为无类路由协议更新时都会携带掩码,有了掩码就能明确的计算出具体的网络id来;

  路由协议分类:根据业务应用分类

  路由协议操作规则:

  1、协议都是在接口上运行的;对于路由器来讲不同的接口的是一个网络(路由器上的接口不能配置相同的网络),所以具体哪些网络跑什么动态路由协议,都是把对应的动态路由协议跑在对应的接口上(一般不是管理员手动配置在那个接口上,而是根据具体的发布的路由,由路由器自动匹配对应的网络并在所在接口运行动态路由协议);

  2、只能学习和发布相同协议已知的路由信息;这句话的意思是说只有相同路由协议的接口才能互相学习,其次是能学习到对方的路由的前提是,对方明确发布了对应路由对应的网络;

  3、如果不同的路由协议间需要交换路由信息,就需要进行注入(import);如下图

  提示:能够注入的路由器一定是多个接口运行了不同的路由协议;就好比上述的R2,它能懂RIP协议,又懂OSPF协议,所以把ospf注入到rip中去,对应rip协议进程就会有对应ospf进程生成的路由信息,这样一来再由R2的RIP进程所在接口,向R1的RIP进程所在接口进行更新,即R1就能学习到ospf中的路由信息;

  路由器收敛:当所有路由表包含相同网络可达性信息,网络(路由)进入一个稳定状态的过程;网络在达到收敛前是无法完全正常工作的;

  衡量动态路由协议的一些性能指标

HCNA Routing&Switching之动态路由基本概念的更多相关文章

  1. HCNA Routing&Switching之动态路由协议RIP

    前文我们了解了动态路由的基本概念,以及动态路由和静态路由的区别,优缺点,动态路由的分类,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/14995317.html ...

  2. HCNA Routing&Switching之静态路由

    前文我们聊到了路由的相关概念和路由基础方面的话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/14947897.html:今天我们聊聊静态路由相关话题: 回顾 ...

  3. HCNA Routing&Switching之动态路由协议OSPF基础(一)

    前文我们了解了基于路径矢量算法的动态路由协议RIP防环以及度量值的修改相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15012895.html:今天我 ...

  4. HCNA Routing&Switching之动态路由协议OSPF建立邻居的条件

    前文我们了解了OSPF的router id.数据包结构.类型.不同类型的数据包作用以及OSPF状态机制,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15027 ...

  5. HCNA Routing&Switching之动态路由协议OSPF基础(二)

    前文我们主要了解了OSPF的区域.区域分类.路由器类型.OSPF的核心工作流程,回顾请参考:https://www.cnblogs.com/qiuhom-1874/p/15025533.html:今天 ...

  6. HCNA Routing&Switching之动态路由协议OSPF DR和BDR

    前文我们了解了OSPF建立邻居关系的条件,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15032907.html:今天我们来聊一聊OSPF中的DR和BDR: ...

  7. HCNA Routing&Switching之路由基础

    在开始聊路由之前,我们首先要明白在网络通讯里,什么是路由?什么是路由表.路由器以及网关的相关术语:路由简单讲就是指网络数据包从源头到目标的路径,主要用来为不同网络间通讯提供数据包转发依据:路由表就是多 ...

  8. HCNP Routing&Switching之动态路由协议IS-IS基础

    前文我们了解了OSPF的特殊区域相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15236330.html:今天我们来聊一聊另一动态路由协议IS-IS相 ...

  9. HCNA Routing&Switching之VLAN间路由

    前文我们了解了二层交换技术vlan相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15091491.html:今天我们来聊一聊不同VLAN间通信相关话题 ...

随机推荐

  1. 西门子S7系列以太网通讯处理器安装调式操作

    北京华科远创科技有限研发的远创智控ETH-YC模块,PLC转以太网型号有MPI-ETH-YC01和MPI-ETH-YC01,适用于西门子S7-200/S7-300/S7-400.SMART S7-20 ...

  2. 对狂神说的MybatisPlus的学习总结

    1.什么是MybatisPlus? 需要的基础:spring,spring mvc,mybatis 作用:可以节省大量的工作时间,所有的CRUD代码都可以自动完成,简化Mybatis MyBatis- ...

  3. Go语言设计模式之函数式选项模式

    Go语言设计模式之函数式选项模式 本文主要介绍了Go语言中函数式选项模式及该设计模式在实际编程中的应用. 为什么需要函数式选项模式? 最近看go-micro/options.go源码的时候,发现了一段 ...

  4. GO学习-(13) Go语言基础之结构体

    Go语言基础之结构体 Go语言中没有"类"的概念,也不支持"类"的继承等面向对象的概念.Go语言中通过结构体的内嵌再配合接口比面向对象具有更高的扩展性和灵活性. ...

  5. elasticsearch_dsl 操作

    import elasticsearch from elasticsearch_dsl import Search, MultiSearch # Search-执行一个搜索,MultiSearch-同 ...

  6. Vue的基本使用和模版语法

    Vue的基本使用和模版语法 一.Vue概述 Vue (读音 /vjuː/,类似于 view) 是一套用于构建用户界面的渐进式框架 vue 的核心库只关注视图层,不仅易于上手,还便于与第三方库或既有项目 ...

  7. MindInsight张量可视设计介绍

    MindInsight张量可视设计介绍 特性背景 张量可视,能够帮助用户直观查看训练过程中的Tensor值,既支持以直方图的形式呈现Tensor的变化趋势,也支持查看某次step的具体Tensor值. ...

  8. 多加速器驱动AGX的目标检测与车道分割

    多加速器驱动AGX的目标检测与车道分割 Object Detection and Lane Segmentation Using Multiple Accelerators with DRIVE AG ...

  9. CUDA 内存统一分析

    CUDA 内存统一分析 关于CUDA 编程的基本知识,如何编写一个简单的程序,在内存中分配两个可供 GPU 访问的数字数组,然后将它们加在 GPU 上. 本文介绍内存统一,这使得分配和访问系统中任何处 ...

  10. ubuntu虚拟机安装ssh教程

    大家好,这期给大家带来一期Ubuntu虚拟机中ssh的安装教程,话不多说,开整 第一步:输入su后输入密码进入root权限 第二步:在管理员模式下运行apt-get install openssh-s ...