当前位置: 首页 > news >正文

【计算机网络笔记】路由算法之层次路由

系列文章目录

什么是计算机网络?
什么是网络协议?
计算机网络的结构
数据交换之电路交换
数据交换之报文交换和分组交换
分组交换 vs 电路交换
计算机网络性能(1)——速率、带宽、延迟
计算机网络性能(2)——时延带宽积、丢包率、吞吐量/率
计算机网络体系结构概念
OSI参考模型基本概念
OSI参考模型中非端-端层(物理层、数据链路层、网络层)功能介绍
OSI参考模型中端-端层(传输层、会话层、表示层、应用层)功能介绍
TCP/IP参考模型基本概念,包括五层参考模型
网络应用的体系结构
网络应用进程通信
网络应用对传输服务的需求
Web应用之HTTP协议(涉及HTTP连接类型和HTTP消息格式)
Cookie技术
Web缓存/代理服务器技术
传输层服务概述、传输层 vs. 网络层
传输层——多路复用和多路分用
传输层——UDP简介
传输层——可靠数据传输原理之Rdt协议
传输层——可靠数据传输之流水线机制与滑动窗口协议
传输层——TCP特点与段结构
传输层——TCP的可靠数据传输
TCP连接管理(图解三次握手和四次挥手)
传输层——拥塞控制原理与解决方法
TCP的拥塞控制机制
网络层服务与核心功能
网络层服务模型——虚电路网络
网络层服务模型——数据报网络
Internet网络的网络层——IP协议之IP数据报的结构
IP分片
IP编址与有类IP地址
IP子网划分与子网掩码
CIDR与路由聚合
DHCP协议
网络地址转换(NAT)
ICMP(互联网控制报文协议)
IPv6简介
路由算法之链路状态路由算法
路由算法之距离向量路由算法


  • 系列文章目录
  • 层次路由
  • 自治系统间(Inter-AS)路由任务


层次路由

更准确地说,它是一种路由策略。

链路状态路由算法和距离向量路由算法都需要将任意规模网络抽象为一个图再计算路由。若一个网络的规模特别大,那么这种抽象就会过于理想。

  • 从网络规模的角度考虑,如果有6亿目的结点的网络,那么路由表几乎无法存储,并且路由计算过程的信息 (e.g. 链路状态分组、 DV)交换量巨大,会淹没链路
  • 还需要考虑网络管理自治性的问题

层次路由就是把大规模网络再抽象一层,将一个区域内的路由器聚合在一起,称为自治系统AS (autonomous systems)。

  • 同一AS内的路由器运行相同的路由协议(算法),即自治系统内部路由协议 (“intra-AS” routing protocol)。不同自治系统内的路由器可以运行不同的AS内部路由协议
  • 每一个自制系统(AS)都有一个或多个特殊的路由器,叫网关路由器(gateway router),它位于AS“边缘”,通过链路连接其他AS的网关路由器。所以可以通过网关路由器与其它AS交换路由信息

因此,就可以把路由分为自治系统内的路由和自治系统间在这里插入图片描述
的路由。

自治系统间(Inter-AS)路由任务

在这里插入图片描述

假设AS1内某路由器收到一个目的地址在AS1 之外的数据报。那么路由器应该将该数据报转发给哪个网关路由器呢?为了解决这样的路由问题,AS1必须:

  • 学习到哪些目的网络可以通过AS2到达,哪些可以通过AS3到达
  • 将这些网络可达性信息传播给AS1内部路由器

以路由器1d为例,看看它的转发表设置。

  • 假设AS1学习到(通过AS间路由协议):子网x可以通过AS3 (网关 1c)到达,但不能通过AS2到达。这样的信息会被告知AS1中的所有路由器
    • 路由器1d:利用AS内部路由信息,确定其到达1c 的最小费用路径接口l,然后在转发表中增加入口:(x, I)
  • 假设AS1通过AS间路由协议学习到:子网x通过 AS3和AS2均可到达
    • 为了配置转发表,路由器1d必须确定应该将去往子网x的数据报转发给哪个网关。这个任务也是由AS间路由协议完成,去在多个网关中进行选择
    • 怎么选择?会用到热土豆路由,也就是将分组发送给最近的网关路由器

整个过程概括如下:

在这里插入图片描述

http://www.lryc.cn/news/239805.html

相关文章:

  • 【华为OD机试python】分糖果【2023 B卷|100分】
  • ARM 汇编基础
  • 虹科Pico汽车示波器 | 汽车免拆检修 | 2017款东风本田XR-V车转向助力左右不一致
  • 阿里云服务器ECS经济型e实例优惠99元性能怎么样?
  • vue3引入vuex基础
  • C++二维数组中的查找
  • 【计算思维】蓝桥杯STEMA 科技素养考试真题及解析 2
  • Qt+sqlite3使用事务提升插入效率
  • 【深度学习】不用Conda在PP飞桨Al Studio三个步骤安装永久PyTorch环境
  • SpringBoot:kaptcha生成验证码
  • C/C++ 使用API实现数据压缩与解压缩
  • Visual Studio连接unity编辑器_unity基础开发教程
  • 2023亚太杯数学建模B题思路分析 - 玻璃温室中的微气候法规
  • 轻量封装WebGPU渲染系统示例<37>- 多个局部点光源应用于非金属材质形成的效果(源码)
  • 设备状态监测与故障诊断系统的作用
  • 浮点数运算精度丢失,如何解决
  • 使用微信小程序openMapApp接口,报错问题解决openMapApp:fail invaild coord
  • 2023亚太杯数学建模思路 - 案例:粒子群算法
  • 【开源】基于JAVA的开放实验室管理系统
  • LeetCode48旋转图像
  • sql手工注入漏洞测试(MYSQL)-墨者-url信息
  • 52.seata分布式事务
  • HTML所有功能大汇总
  • 层次分析法--可以帮助你做决策的简单算法
  • docker启动链接sqlservr的镜像时报SSl错误
  • 力扣:175. 组合两个表(Python3)
  • 【libGDX】使用Mesh绘制矩形
  • X2Keyarch迁移工具实战 | 将CentOS高效迁移至浪潮云峦操作系统KeyarchOS
  • 基于VM虚拟机下Ubuntu18.04系统,Hadoop的安装与详细配置
  • 【图像分类】基于深度学习的垃圾分类系统的设计与实现(ResNet网络,附代码和数据集)