路由器动态路由配置

本博客为观看湖科大的教书匠系列计算机网络视频的学习笔记。

静态路由选择动态路由选择
采用人工配置的方式给路由器添加网络路由、默认路由和特定主机路由等路由条目。路由器通过路由选择协议自动获取路由信息。
静态路由选择简单、开销小,但不能及时适应网络状态(流量、拓扑等)的变化动态路由选择比较复杂、开销比较大,但能较好地适应网络状态的变化
静态路由选择一般只在小规模网络中采用。动态路由选择适用于大规模网络。

因特网所采取的路由选择协议具有以下三个主要特点:

自适应 : 因特网采用动态路由选择,能较好地适应网络状态的变化。
分布式 : 因特网中的各路由器通过相互间的信息交互,共同完成路由信息的获取和更新
分层次 : 将整个因特网划分为许多较小的自治系统(AutonomousSystem,AS)在自治系统内部和外部采用不同类别的路由选择协议,分别进行路由选择。
在这里插入图片描述
外部网关协议EGP和内部网关协议IGP只是路由选择协议的分类名称,而不是具体的路由选择协议。

RIP

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

  • RIP将路由器到直连网络的距离定义为1。
  • RIP将路由器到非直连网络的距离定义为所经过的路由器数加1。
  • RIP允许一条路径最多只能包含15个路由器,距离等于16时相当于不可达。因此RIP只适用于小型互联网。

在这里插入图片描述
tips:

  • RIP认为所通过路由器数量最少的路由就是好的路由。
  • 当到达同一目的网络有多条RIP距离相等的路由时,可以进行等价负载均衡,也就是将通信量均衡地分布到多条等价的路径上。
RIP characterdetail
和谁交换信息仅和相邻路由器交换信息。
交换什么信息路由器自己的路由表。即本路由器到所在自治系统AS中各网络的最短RIP距离,以及到各网络应经过的下一跳路由器。
何时交换信息周期性交换(例如,每隔约30秒) 为了加快RIP的收敛速度,当网络拓扑发生变化,路由器要及时向所有相邻路由时器通告拓扑变化后的路由信息,这称为触发更新。
超时删除180秒(默认)没有收到某条路由条目的更新报文,则把该路由条目标记为无效(即把RIPI还没有收到该路由条目的更新报文,则将该置为16,表示不可达),若再过一段时间(如120秒)路由条目从路由表中删除。

在这里插入图片描述

D在接到路由器C的路由表后,会以路由器C到各个目的网络的距离+1的长度和自己到各个路由器的距离长度比较,如果有更短的路径选择,则会更新自己的路由表。(上图中“D修改路由器C的路由表”应为老师笔误应修改为“路由器D参考C的信息修改自己的路由表”)

RIP存在的问题:
坏消息传播得慢
在这里插入图片描述
“坏消息传播得慢”的问题又被称为路由环路或RIP距离无穷计数问题。这是距离向量算法的一个固有问题。可以采取以下多种措施减少出现该问题的概率或减小该问题带来的危害:

  • 限制最大RIP距离为15(16表示不可达)
  • 当路由表发生变化时就立即发送路由更新报文(即“触发更新”),而不仅是周期性发送。
  • 让路由器记录收到某个特定路由信息的接口,而不让同一路由信息再通过此接口向反方向传送(即“水平分割”)。

使用上述措施仍无法彻底解决问题。因为在距离向量算法中,每个路由器都缺少到目的网络整个路径的完整信息,无法判断所选的路由是否出现了环路。
tip:
RIP相关报文使用运输层的UDP协议进行封装,使用的UDP端口号为520,RIP的核心功能是路由选择,属于TCP/IP体系结构的网际层

RIP的优缺点:

优点缺点
实现简单,路由器开销小。RIP限制了最大RIP距离为15,这就限制了使用RIP的自治系统AS的规模。
如果一个路由器发现了RIP距离更短的路由,那么这种更新信息就传播得很快,即“好消息传播得快相邻路由器之间交换的路由信息是路由器中的完整路由表,因而随着网络规模的扩大,开销也随之增大。
坏消息传播得慢”,使更新过程的收敛时间过长。因此,对于规模较大的自治系统AS,应当使用OSPF协议。

开放最短路径优先OSPF

在这里插入图片描述
链路状态(Link State,LS)是指本路由器都和哪些路由器相邻,以及相应链路的“代价(cost)
代价”用来表示费用、距离、时延和带宽等,这些都由网络管理人员来决定。

OSPF相邻路由器之间通过交互问候(Hello)分组来建立和维护邻居关系。

  • 问候(Helo)分组封装在IP数据报中,发往组播地址224.0.0.5。IP数据报首部中的协议号字段的取值为89,表明IP数据报的数据载荷为OSPF分组。

在这里插入图片描述

OSPF分组直接使用网际层的IP数据报进行封装,而不像RIP报文需要使用运输层用户数据报协议UDP封装。从数据包按网络体系结构逐层封装的角度看,0SPF属于网际层协议,而RIP属于应用层协议(但其核心功能是路由选择属于网际层)

  • 问候(Hello)分组的发送周期为10秒,
  • 若40秒未收到来自邻居路由器的问候(Hello)分组则认为邻居路由器不可达。
  • 每个路由器都会建立一张邻居表。

在这里插入图片描述
链路状态通告LSA被封装在链路状态更新(Link State Update,LSU)分组中,采用可靠的洪泛法(Flooding)进行发送。

  • 洪泛法的要点是路由器向自己所有的邻居路由器发送链路状态更新分组,收到该分组的各路由器又将该分组转发给自己所有的邻居路由器(但其上游路由器除外),以此类推。
  • 可靠是指收到链路状态更新分组后要发送确认,收到重复的更新分组无需再次转发,但要发送一次确认。

链路状态通告LSA包含直连网络的链路状态信息和邻居路由器的链路状态信息。

使用0SPF的每一个路由器都有一个链路状态数据库(Link State Database,LSDB),用于存储链路状态通告LSA
通过各路由器洪泛发送封装有各自链路状态通告LSA的链路状态更新分组LSU,各路由器的链路状态数据库LSDB最终将达到一致。
在这里插入图片描述
上图中
1.未给出各路由器收到LSU后发送确认的情况
2.未给出R2转发LSU的情况。
在这里插入图片描述

OSPF的五种分组类型功能
问候(Hello)用来发现和维护邻居路由器的可达性。
数据库描述(Database Description)用来向邻居路由器给出自己的链路状态数据库中的所有链路状态项目的摘要信息。
链路状态请求(Link State Request)用来向邻居路由器请求发送某些链路状态项目的详细信息。
链路状态更新(Link State Update)路由器使用链路状态更新分组将其链路状态信息进行洪泛发送,即用洪泛法对整个系统更新链路状态。
链路状态确认(Link State Acknowledgement)对链路状态更新分组的确认分组。

在这里插入图片描述
多点接入网路的OSPF路由器
为了减少所发送问候分组和链路状态更新分组的数量,OSPF采用以下措施:

  • 选举指定路由器(Designated Router,DR)和备用的指定路由器(Backup DesignatedRouter, BDR)
  • 所有的非DR/BDR只与DR/BDR建立邻居关系

在这里插入图片描述
为了使0SPF协议能够用于规模很大的网络,0SPF把一个自治系统AS再划分为若干个更小的范围,称为区域(area)。划分区域的好处就是把利用洪泛法交换链路状态信息的范围局限于每一个区域,而不是整个自治系统AS,这样就减少了整个网络上的通信量。
在这里插入图片描述
在上图中,主干路由器:R3,R4,R5,R6,R7
自治系统边界路由器:R6
区域内路由器:区域1内的R1和R2,区域2内的R8,区域3内的R9

在这里插入图片描述
采用划分区域的方法,虽然使交换信息的种类增多了,同时也使0SPF协议更加复杂了,但这样做能使每一个区域内部交换路由信息的通信量大大减小,因而使OSPF协议能够用于规模更大的自治系统AS。

例题:
OSPF是以代价最小为目的,RIP是以经过路由器的数量最小为目的。
在这里插入图片描述

边界网关协议BGP

  • 边界网关协议(Border Gateway Protocol,BGP)属于外部网关协议EGP这个类别,用于自治系统AS之间的路由选择协议。
  • 由于在不同AS内度量路由的“代价”(距离、带宽、费用等)可能不同,因此对于AS之间的路由选择使用统一的“代价”作为度量来寻找最佳路由是不行的。

在这里插入图片描述
AS之间的路由选择还必须考虑相关策略(政治、经济、安全等)
在这里插入图片描述
BGP策略中不一定能找到最好路径,只是尽量找到最优路径。

BGP的相关概念:

  • 在配置BGP时,每个AS的管理员要选择至少一个路由器作为该AS的“BGP发言人
  • 一般来说,两个BGP发言人都是通过一个共享网络连接在一起的,而BGP发言人往往就是BGP边界路由器:
  • 使用TCP连接交换路由信息的两个BGP发言人,彼此称为对方的邻站(neighbor)或对等站(peer)
  • BGP发言人除了运行BGP协议外,还必须运行自己所在AS所使用的内部网关协议IGP,例如RIP或OSPF
  • BGP发言人交换网络可达性的信息,也就是要到达某个网络所要经过的一系列自治系统
  • 当BGP发言人相互交换了网络可达性的信息后,各BGP发言人就根据所采用的策略,从收到的路由信息中找出到达各自治系统的较好的路由,也就是构造出树形结构且不存在环路的自治系统连通图

在这里插入图片描述
在这里插入图片描述
BGP-4是目前使用得最多的版本,在[RFC4271]中规定了BGP-4的四种报文:

报文名称作用
打开 OPEN用来与相邻的另一个BGP发言人建立关系,使通信初始化。
保活 KEEPALIVE用来周期性地证实邻站的连通性。
更新 UPDATE用来通告某一条路由的信息,以及列出要撤销的多条路由。
通知 NOTIFICATION用来发送检测到的差错。

R1与R2之间是通过BGP路由协议交换路由信息的,该路由协议的报文被封装在传输层的TCP协议中,端口号为179,为建立连接的可靠传输。在这里插入图片描述

网关协议封装在哪个协议中进行传输
RIPUDP
OSPFIP
BGPTCP

路由器的基本工作原理

路由器是一种具有多个输入端口和输出端口的专用计算机,其任务是转发分组。
在这里插入图片描述

路由器是一种具有多个输入端口和输出端口的专用计算机,其任务是路由选择和转发分组。

路由选择:是指路由器根据一定的算法从多条可能的路径中选择最佳路径的过程。路由器维护一个路由表,其中记录了到达不同目的网络的最佳路径及其相关信息(如下一跳地址、跳数等)。
路由选择算法,如RIP、OSPF、BGP等,负责更新路由表,确保路径的最优性和网络的稳定性。路由选择的目标是确保数据包沿着最佳路径高效、可靠地传输。

分组转发:是指路由器根据路由表中的信息,将接收到的数据包转发到正确的出口接口的过程。当数据包到达路由器时,路由器会检查数据包的目的IP地址,并在路由表中查找匹配的条目确定下一跳地址。然后,路由器将数据包转发到相应的出口接口,沿着选择的路径继续传输。在这里插入图片描述
交换结构的速率对于路由器的性能是至关重要的。因此,人们对交换结构进行了大量研究,以提高路由器的转发速率;
实现交换结构的三种基本方式是:通过存储器通过总线以及通过互连网络。这三种交换结构可实现的路由器转发速率依次提高。

网际控制报文

  • 为了更有效地转发IP数据报以及提高IP数据报交付成功的机会,TCP/IP体系结构的网际层使用了网际控制报文协议(Internet Control Message Protocol,ICMP)[RFC 792]。
  • 主机或路由器使用ICMP来发送差错报告报文和询问报文。
  • ICMP报文被封装在IP数据报中发送。

在这里插入图片描述

ICMP差错报告报文作用
终点不可达当路由器找不到匹配的路由条目,无法转发该IP数据报时发送
源点抑制当路由器或主机由于拥塞而丢奔IP数据报时发送,使源点知道应当把IP数据报的发送速率放慢。
时间超过(超时)当路由器收到一个目的IP地址不是自己的IP数据报时,会将其首部中生存时间TTL字段的值减1。若结果不为0,则路由器将该数据报转发出去;若结果为0,路由器丢弃该数据报,还要向发送该IP数据报的源点发送时间超时报文。另外,当终点在预先规定的时间内未能收到一个数据报的全部数据报分片时,就把已收到的数据报片都丢弃,也会向源点发送时间超时报文。
参数问题当路由器或目的主机收到IP数据报后,根据其首部中的检验和字段的值发现首部在传送过程中出现了误码,就丢弃该数据报,并向发送该数据报的源点发送参数问题报文
改变路由(重定向)路由器把改变路由报文发送给主机,让主机知道下次应将IP数据报发送给另外的路由器,这样可以通过更好的路由到达目的主机

以下情况不应发送ICMP差错报告报文:

  • 对ICMP差错报告报文不再发送ICMP差错报告报文.
  • 对第一个分片的IP数据报片的所有后续数据报片都不发送ICMP差错报告报文。
  • 对具有多播地址的IP数据报都不发送ICMP差错报告报文。
  • 对具有特殊地址(例如127.0.0.0或0.0.0.0)的IP数据报不发送ICMP差错报告报文.

ICMP询问报文是网络故障排除和性能测试的重要工具。它们可以帮助网络管理员诊断网络问题,测量网络延迟,以及同步网络设备的时间。主要的ICMP询问报文包括:

  • 回送请求和回答:
    这是最常见的ICMP询问报文,通常由ping命令使用。这种报文的主要用途是检测两个网络设备之间的可达性和测量往返时间(RTT)。
    在这里插入图片描述

  • 时间戳请求和时间戳应答:
    用于同步网络中不同设备的时间或测量网络延迟。
    时间戳请求报文包含发送时间戳,接收方在回复时会附上接收时间戳和发送时间戳。这可以用于计算网络延迟和校准时钟偏差。

  • 地址掩码请求和地址掩码应答:
    用于获取网络上设备的子网掩码。地址掩码请求报文由设备发送,以请求网络上的其他设备提供其子网掩码。接收方收到请求后,会发送一个地址掩码应答报文,包含其子网掩码。

  • 跟踪路由:
    用于探测IP数据报从源主机到达目的主机要经过哪些路由器。
    在这里插入图片描述
    traceroute使用的ICMP报文类型有回送请求和回答报文以及差错报告报文。

在这里插入图片描述

在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【SOFARPC】SOFA入门实战

背景 由于最近交付项目,甲方使用了SOFA这套体系,之前虽然有过一些了解,但是真正实战还是没有那么熟悉,因此搭建一个实战的demo,熟悉一下相关内容。 SOFA SIMALE DEMO 项目搭建 项目目录结构 如上图所示&#xff0…

基于电鳗觅食优化算法(Electric eel foraging optimization,EEFO)的无人机三维路径规划(提供MATLAB代码)

一、无人机路径规划模型介绍 无人机三维路径规划是指在三维空间中为无人机规划一条合理的飞行路径,使其能够安全、高效地完成任务。路径规划是无人机自主飞行的关键技术之一,它可以通过算法和模型来确定无人机的航迹,以避开障碍物、优化飞行…

数据结构小记【Python/C++版】——BST树篇

一,基础概念 BST树,英文全称:Binary Search Tree,被称为二叉查找树或二叉搜索树。 如果一个二叉查找树非空,那么它具有如下性质: 1.左子树上所有节点的值小于根节点的值,节点上的值沿着边的方向递减。 2…

Python+Django+Html网页前后端指纹信息识别

程序示例精选 PythonDjangoHtml网页前后端指纹信息识别 如需安装运行环境或远程调试,见文章底部个人QQ名片,由专业技术人员远程协助! 前言 这篇博客针对《PythonDjangoHtml网页前后端指纹信息识别》编写代码,代码整洁&#xff0…

【Spring Boot系列】快速上手 Spring Boot

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…

【大厂AI课学习笔记NO.75】人工智能产业的就业岗位分布

见上图,这是详细的人工智能产业的就业岗位分布情况。 就业领域包括物联网、智能芯片、机器学习、深度学习、计算机视觉CV、自然语言处理NLP、智慧语音、机器人、知识图谱等领域。 人工智能作为当今科技革命与产业变革的重要驱动力量,其就业岗位分布广泛…

【开源】SpringBoot框架开发软件学院思政案例库系统

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 系统管理员2.2 普通教师 三、系统展示四、核心代码4.1 查询思政案例4.2 审核思政案例4.3 查询思政课程4.4 思政案例点赞4.5 新增思政案例评语 五、免责说明 一、摘要 1.1 项目介绍 基于JAVAVueSpringBootMySQL的软件学…

【新书推荐】19.1 DOS程序段前缀PSP

本节内容:介绍DOS程序段前缀及其应用。 ■程序段前缀PSP:DOS系统加载程序时,在程序段前设置一个具有256字节的信息区称为程序段前缀PSP。 ■终止程序的另一途径:利用程序段前缀PSP偏移地址0处的“INT 20H”终止程序。示例代码t19-…

每日五道java面试题之springMVC篇(二)

目录: 第一题. 请描述Spring MVC的工作流程?描述一下 DispatcherServlet 的工作流程?第二题. MVC是什么?MVC设计模式的好处有哪些?第三题. 注解原理是什么?第四题. Spring MVC常用的注解有哪些?第五题. SpingMvc中的…

Java EE之wait和notify

一.多线程的执行顺序 由于多个线程执行是抢占式执行,就会导致顺序不同,同时就会导致出现问题,就比如俩个线程同时对同一个变量进行修改,我们难以预知执行顺序。 但在实际开发中,我们希望代码按一定的逻辑顺序执行&am…

HTML5 Web Worker之性能优化

描述 由于 JavaScript 是单线程的,当执行比较耗时的任务时,就会阻塞主线程并导致页面无法响应,这就是 Web Workers 发挥作用的地方。它允许在一个单独的线程(称为工作线程)中执行耗时的任务。这使得 JavaScript 代码可…

Node.js:构建高性能网络应用的利器

🤍 前端开发工程师、技术日更博主、已过CET6 🍨 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 🕠 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》 🍚 蓝桥云课签约作者、上架课程《Vue.js 和 E…

吴恩达机器学习-可选实验室:逻辑回归,决策边界(Logistic Regression,Decision Boundary))

文章目录 目标数据集图数据逻辑回归模型复习逻辑回归和决策边界绘图决策边界恭喜 目标 在本实验中,你将:绘制逻辑回归模型的决策边界。这会让你更好地理解模型的预测。 import numpy as np %matplotlib widget import matplotlib.pyplot as plt from lab_utils_co…

基于WEB的服务器运行状态的监控分析系统

摘要: 随着云计算和电子商务规模的扩大和复杂性的增加,企业数据中心Web服务器数量急剧增加,用户对网络性能的要求也越来越高,导致企业和用户对数据中心的通信服务稳定性和快速响应要求越来越高。本作品提供一套行之有效的Web服务器性能监控系…

RabbitMQ - 05 - Direct交换机

部署demo项目 通过消息队列demo项目进行练习 相关配置看此贴 http://t.csdnimg.cn/hPk2T 注意 生产者消费者的yml文件也要配置好 什么是Direct交换机 Direct 交换机是 AMQP(高级消息队列协议)中的一种交换机类型,它根据消息的路由键&am…

【R语言】R包-探索ggtree进化树美化

文章目录 R包-探索ggtree进化树美化分析流程1. 关于包的下载2. 绘制一个基本的进化树图3. 添加样本名称3. 添加节点节点高亮4. 添加分组小结 R包-探索ggtree进化树美化 提示:基于nwk文件进行进化树美化,如更换进化树格式,添加分组、节点、遗传…

【大厂AI课学习笔记NO.78】智能芯片产业人才能力图谱

有志于从事智能芯片产业的朋友,可以参考下上面的图谱。 比如C站的程序猿很多,那么技能能力中,你要掌握的就包括C/C、Python、Bash等常用的编程语言。 还要熟悉TensorFlow、PyTorch等主流的深度学习框架。 这两个框架,我们都介绍…

SpringSecurity两种验证方式及调用流程

一、HttpBasic方式 <security:http-basic/> 二、Formlogin方式 <security:form-login login-page"/userLogin" /> 三、SpringSecurity执行流程

论文阅读《FENET: FOCUSING ENHANCED NETWORK FOR LANE DETECTION》

ABSTRACT 受人类驾驶专注力的启发&#xff0c;这项研究开创性地利用聚焦采样&#xff08;Focusing Sampling&#xff09;、部分视野评估&#xff08;Partial Field of View Evaluation&#xff09;、增强型 FPN 架构和定向 IoU 损失&#xff08;Directional IoU Loss&#xff…

uniapp:小程序数字键盘功能样式实现

代码如下&#xff1a; <template><view><view><view class"money-input"><view class"input-container" click"toggleBox"><view class"input-wrapper"><view class"input-iconone"…