5---路由算法详解

合集下载

计算机网络中的路由算法

计算机网络中的路由算法

计算机网络中的路由算法路由算法在计算机网络中起着关键的作用,它用于确定数据包在网络中的传输路径。

根据不同的网络拓扑和需求,有多种不同的路由算法被应用。

本文将介绍几种常见的路由算法。

1. 距离矢量算法(Distance Vector Algorithm)距离矢量算法是一种分布式的路由算法,每个节点在路由表中记录到达目的节点的距离向量。

节点之间通过交换距离向量信息来更新路由表,并且通过Bellman-Ford算法来计算最短路径。

该算法简单易实现,但是在大型网络中容易产生计数到无穷大的问题,即由于链路故障等原因产生的无限循环。

2. 链路状态算法(Link State Algorithm)链路状态算法是一种集中式的路由算法,每个节点都会收集与自身相连的链路状态信息,并通过最短路径算法(如Dijkstra算法)计算出到达其他节点的最短路径。

然后,每个节点都将自己的链路状态信息广播给所有其他节点,使得每个节点都有完整的网络拓扑和链路状态信息。

该算法需要节点之间频繁的广播和计算,但是能够保证收敛,即要么找到最短路径,要么不进行路由。

3. 路径向量算法(Path Vector Algorithm)路径向量算法可以看作是距离矢量算法和链路状态算法的结合,它通过回退进行路径检测和避免计数到无穷大的问题。

每个节点在路由表中记录到达目的节点的路径和向量信息,通过交换路径向量信息来更新路由表。

在计算最短路径时,路径向量算法使用类似链路状态算法的Dijkstra算法,但是在寻找路径时,会检查前面的节点是否已经在路径中出现,以避免产生环路。

4. 队列距离矢量算法(Queue Distance Vector Algorithm)队列距离矢量算法是距离矢量算法的一种改进算法,主要解决计数到无穷大问题。

该算法引入了队列和计数器,通过计数器和链路状态信息来确定数据包是否进入队列。

每个节点在路由表中记录到达目的节点的距离向量和队列的长度。

路由选择算法

路由选择算法
6
2021/6/4
2、固定式(网中每一个结点存放一张事先确 定好的路由表(存放最佳路由)) 表中给出本结点到各目的结点的最短路径 例
一旦C和E之间的 网络断开,则A 、 B无法通信。
特点:简单、可靠性差(不能适应网络状态变 7
2021/6/4
3、适应式(动态路由选择)适用于中型网络 路由表动态设置(不需要人工干预) 实现方式:相邻结点(交换机或路由器)周期 性交换路由信息。
D

i
S

i
2、经128ms后,结点1收到3个相邻节点(2、3
、4)的时延向量 D、2 D、3 D,4 进行更新运算,得 到更新后的路由表。
d 21 2
d 22 0
D
2
d d
23 24
3
2
d
25
3
d 26 5
d 31 3
d 32 3
D
3
42
部分资料从网络收集整 理而来,供大家参考,
感谢您的关注!
Mind133
18
2021/6/4
计算 d 15 最小值
1 2 3 5 1 2 4 5 1 3 5 1 4 5
M ind152
d15 d12 d 23 d35 6 d15 d12 d 24 d 45 5 d15 d13 d35 6 d15 d14 d 45 2
19
2021/6/4
26
2021/6/4 27
2021/6/4
2、发送链路状态分组(采用扩散式)
3、计算新路由(采用Dijstra算法) 当一个结点获得了一整套的链路状态分
组后,便可以用Dijstra算法找出它到所有可能 目的结点的最短路径,并更新路由表。

第6章路由算法总结ppt课件

第6章路由算法总结ppt课件

在日常生活中,随处都可以看到浪费 粮食的 现象。 也许你 并未意 识到自 己在浪 费,也 许你认 为浪费 这一点 点算不 了什么
非自适应路由算法
固定路由算法(fixed routing algorithm) 洪泛法(flooding) 随机走动法(random walk) 基于流量的路由算法(flow-based routing)
由所有的线路平均延迟,可直接计算出流量的加权 平均值,从而得到整个网络的平均分组延迟
这样找出网络的最小平均延迟就可以实现最优路由 选择
在日常生活中,随处都可以看到浪费 粮食的 现象。 也许你 并未意 识到自 己在浪 费,也 许你认 为浪费 这一点 点算不 了什么
自适应路由算法
孤立路由选择 集中路由选择 分布式路由选择
当结点或链路发生故障时,该方法可使路由算法有 较好的稳健性
在日常生活中,随处都可以看到浪费 粮食的 现象。 也许你 并未意 识到自 己在浪 费,也 许你认 为浪费 这一点 点算不 了什么
基于流量的路由算法
该方法不仅考虑网络的拓扑结构,还要考虑网络的 负载因素
对某一给定的线路,如果已知负载量与平均流量, 那么可以根据排队论的知识计算出该线路上的平均 分组延迟
• 如果找不到相应的表项,在G的路由表中增加一项 :(N,G’,D’+C)
• 如果V=G’,G中路由表对应的表项根据D’+C和D的 比较获得
– 如果D’+C<D,G中表项更新为(N,G’,D’+C)
– 否则G中表项保持原状,仍为(N,V,D)
在日常生活中,随处都可以看到浪费 粮食的 现象。 也许你 并未意 识到自 己在浪 费,也 许你认 为浪费 这一点 点算不 了什么

第6章路由算法总结

第6章路由算法总结

第6章路由算法总结路由算法是网络中的核心算法之一,它决定了数据包在网络中的传输路径。

路由算法的设计和优化对于网络的性能和稳定性具有重要影响。

在本章中,我们将总结一些常见的路由算法,并介绍它们的优缺点。

1.静态路由算法:静态路由算法是最简单的路由算法,它通过人工配置将目的地和下一跳地址映射起来。

静态路由算法的优点是简单、易于实现和维护,适用于小型网络。

然而,静态路由算法的缺点是无法适应网络拓扑的变化,对于大型和复杂网络不可行。

2.距离向量路由算法:距离向量路由算法是一种基于邻居节点交换信息的分布式算法。

每个节点维护一个路由表,其中包含到达各个目的地的距离和下一跳节点信息。

节点周期性地将路由表广播给邻居节点,并根据收到的更新信息更新自身路由表。

距离向量路由算法的优点是简单、分布式,适用于小型网络。

然而,它的缺点是收敛速度慢和计算复杂度高,容易出现路由环路和计数问题。

3.链路状态路由算法:链路状态路由算法是一种基于全局网络状态信息的算法。

每个节点通过发送链路状态信息到整个网络,使得每个节点都具有完整的网络拓扑信息。

节点根据收到的链路状态信息计算最短路径,并构建路由表。

链路状态路由算法的优点是收敛速度快、计算复杂度低和稳定性好。

然而,它的缺点是需要消耗大量的带宽和存储资源,并且对于网络规模较大的情况下,算法的效率会下降。

4.链路状态路由算法的改进算法:为了优化链路状态路由算法,人们提出了一些改进算法,如OSPF (开放式最短路径优先)、IS-IS(中间系统间路由)等。

这些算法使用了一些技术,如分层、区域划分和链路优化等,以提高算法的性能和可扩展性。

5.BGP(边界网关协议):BGP是用于互联网的一种路径向量路由协议。

它是一种自治系统之间的路由协议,用于实现互联网的路由选择。

BGP通过交换路由信息和策略来确定数据包的最佳路径。

BGP的优点是具有高度的灵活性和可配置性,可以根据策略调整路由。

然而,BGP的缺点是配置复杂和收敛速度较慢。

路由器与路由算法

路由器与路由算法

三类交换网络
内存交换(Switching Via Memory) 第一代路由器: 分组通过系统的(单个)CPU拷贝 速度受到内存带宽的限制 (每个分组需2次穿越 系统总线)
Input Port Memory Output Port
System Bus
总线交换(Switching Via Bus) 分组通过一条共享的总线从输入端口的内存传递 到输出端口的内存 总线竞争:交换速率受限于总线的带宽 1 Gb/s总线,Cisco 1900:对访问接入和企业级 的路由器已经足够 (但还不适应在区域或主干级 线路上使用)
5.2.9 链路状态算法(LS)和距离向量算法(DV) 的比较 算法复杂性 LS –路由信息向全网发送 –N节点,E个连接的情况下,每个节点发 送O(nE)的报文 DV –仅在邻居节点之间交换
收敛(Convergence)速度 LS 使用最短路径优先算法,算法复杂度为 O(n**2) n个结点(不包括源结点),需要 n*(n+1)/2 次比较 使用更有效的实现方法,算法复杂度可 以达到O(nlogn) 可能存在路由振荡(oscillations)(研究
路由器C的路由表
目的网络号 下一个转发路由器端口或IP地址 度量(转发次数)
128.1.0.0
128.2.0.0 128.3.0.0 128.4.0.0
128.3.0.2 (RB)
128.3.0.2 (RB) 直接端口1 直接端口2
2
1 0 0
Internet 路由表包含内容
目的或网络掩码 协议 优先级 优先权 下一跳地址 输出接口 影响路由权的属性, 如右图。越小,路径 越好。
热点问题)
DV 收敛时间不定 可能会出现路由循环 count-to-infinity问题

常见的路由算法

常见的路由算法

常见的路由算法常见的路由算法路由算法是指为了用于在互联网之类的分组通讯网络中的数据包进行寻址所使用的一种算法。

其目的是为了能够掌握网络拓扑结构,更有效的使用网络资源,提供更好的服务质量,在众多的路由算法中,下面列出了一些常见的。

1. 链路状态路由协议(Link State Routing Protocol)链路状态路由协议是一种以网络中所有的节点为基础的路由协议,它的特点是在所有节点之间建立并保持一个网络状态数据库,每个节点首先会发出一个链路状态数据包来描述自己知道的其他节点的相关信息,并通过该信息计算出一张最短路径树。

LSRP一般都有洪泛问题,产生洪泛的原因在于每个节点的发出的链路状态数据包要发到整个网络中,所以数据包会不断传播,产生大量网络流量。

常见的LSRP有OSPF等。

2. 距离向量路由协议(Distance Vector Routing Protocol)距离向量路由协议是一种以自身节点所连接的邻居节点的路由信息为基础的协议,每个节点只知道自己所连接的邻居节点的路由信息,而不知道整张网络的拓扑结构。

DVRP算法通过递归与相邻节点交换距离向量信息来分配最短路径,因此它能够在网络中改变路由波动时使整个路由表保持一致。

常见的DVRP有RIP等。

3. 混合路由协议(Hybrid Routing Protocol)混合路由协议是链路状态和距离向量路由协议的混合体,它采用链路状态路由协议的优点,建立了一张网络拓扑地图;同时又采用距离向量路由协议的算法对网络进行遍历,它使用距离向量路由协议的性质表明每个路由器只需要与它的成邻接的路由器通信,这样可以大大减小链路状态路由协议产生的洪泛问题。

4. 路由发现协议(Route Discovery Protocol)路由发现协议通常是物理网络发挥作用的协议。

当网路中有一个新的路由器被连接时,路由器会通过路由发现协议来发现新路由器,这样数据就可以经过新路由器并到达目的地。

计算机网络网络层路由算法PPT课件

计算机网络网络层路由算法PPT课件
elnN个。当然由分层引起的路径 长度的实际增长非常小。
精选课件
18
广播路由
同时给全部的目标地址发送一个 数据包称为广播
扩散法。
多目标路由:每个数据包含一组 目标地址,经过路由器,针对目 标选路,目标分散
逆向路径转发(reverse path forwarding)
沿汇集树(sink tree)生成树
类似的值。
假设使用延迟作为距离度量,并且路由器知道他到 每个邻居的延迟。每隔T秒每个路由器向他的每个 邻居发送一个表,该表记录了它到每个目标的延迟, 同时它也从邻居那里收到一个类似的表。
精选课件
7
交换距离信息更新路由表示例
精选课件
8
无穷计算问题
A BCD E
A BCD E
∞∞∞ 1 ∞∞ 12∞ 123 123
reverse routes.
路径维护
每个节点周期性的广播一个 HELLO消息并期望它的邻居 做出回应,如果回应没有到 来说明消息广播者已经知道 它的邻居已失效或离开接收 范围,因而不再跟自己有连 接。这些信息用来清除掉那 些不再有效的消息。
精选课件
31
在最近的T时间内曾经给它发送 过到达该目标的邻居—该目标的 活动邻居
(a)
∞ 初始时
1
∞ 第1次交换后 3
∞ 第2次交换后 3 ∞ 第3次交换后 5
4 第4次交换后 5
7
7

23 23 43 45 65 67 8... 7 ∞∞
(b)
4 初始时 4 第1次交换后 4 第2次交换后 4 第3次交换后 6 第4次交换后 6 第5次交换后 8 第6次交换后

问题的核心在于当X告诉Y自己有一条通往某个地方的路径

路由算法简介

路由算法简介

上述路径环路会通过R1、R2之间不断的路 由更新报文交换而解除,但是解除过程是 非常缓慢的。在出现路径环路之后,在下 一轮路由广播中,R1将向R2广播 (net1,R2,2)表项,R2收到此表项后,将 去往net1的路径改为(net1,R1,3);
然后R2向R1通告(net1,R1,3)表项, R1将去往net1的路由项改为(net1,R2, 4)…
➢ 适应范围:支持较大规模的网络,最多可 支持几百台路由器。
➢ 快速收敛:在网络拓扑结构发生变化后立 即发送更新报文,使变化在自治系统中同 步
➢ 无自环:由于OSPF根据收集到的链路状态 用最短路径树算法(Dijkstra)计算路由, 从算法本身保证了不会生成自环路由。
➢ 区域划分:允许自制系统的网络被划分成 区域来管理。
快 65536 可进行区域划分
Dijkstra算法
➢ 在路由选择算法中都要用到求最短路径的 算法,最出名的就是Bellman-Ford算法和 Dijkstra算法。他们的主要思想:黑板分析。
DSR 路由协议简介
➢ 动态源路由协议(DSR,Dynamic Source Routing)是一种按需路由协议,它允许节点 动态地发现到达目的节点的多跳路由。
图2 OSPF中AS、主干和区域间的关系
OSPF协议的基本特点
➢ 向本自治系统中的所有路由器发送信息。 使用洪泛法(flooding):路由器通过所有 输出端口向所有相邻的路由器发送信息, 这些相邻路由器又将此信息发给相邻路由 器(但不回传)。这样,最终整个路由器 都得到这个消息的一个副本。
➢ 发送的信息:与本路由器相邻的所有路由 器的链路状态。
➢ 当跳数超过15,RIP协议会认为目的地不可 达。因此,它只适应于中小型网络。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
路由算法的分类

按应用场合

广域网路由 (解决一个子网内的路由) 互联网路由 (解决不同子网之间的路由)
第5章 路由算法
13
2014/11/24
第5章 内容概述

5.1 路由算法概述
- 5.1.1 路由选择算法的分类
- 5.1.2 对路由选择算法的要求
- 5.1.3 路由算法的实现—路由表


3
5
节点2的输入业务量为15个 单位。由于每条链路的容量 仅为10个单位,在仅使用一 条路径的情况下,节点2至少 要丢弃5个单位的业务流量。

6
所有链路的容量均为10单位 目的节点
Hale Waihona Puke 如果节点2将输入业务流量 在2→4→6和2→5→6之间分 摊,节点1选择1→3→6,则 每条链路上的业务流量都不 超过链路容量的75%,因而 分组的时延较小。

路由表对每个目的节点指出分组应发向 的下一个节点。

节点1上的路由表
目的节点 下一个节点 2 2 3 2 4 4 5 4 6 2 目的节点 下一个节点
节点4上的路由表
1 1 2 2 3 3 5 5 6 5
第5章 路由算法
15
2014/11/24
5.1.3 路由算法的实现—路由表

当路由表建立起来之后,在进行路由选择时只是简单地
路由选择的目的和要求: 能正确、迅速、合理地传送分组(报文)信息。
能适应网络内节点或链路故障而引起的拓扑变化
,使分组(报文)在有故障的条件下一般还能到达 终点。在发生故障时,允许某些线路的通信量过载 而增加时延。

能适应网络流量的变化,使各通路的流量均匀,
整个网络的通信设备负荷平衡,充分发挥效率。


8 2014/11/24
第5章 路由算法
5.1
λ1
源节点 1 4
路由算法概述 (5)
从图中可以看出:当节点1 和2输入的流量很大时,根据 不同的路由选择方法,网络 可接纳的最大通过量为10~ 30单位。

λ2
2 源节点
3
5
6
所有链路的容量均为10单位 目的节点
由此可以看出:一个路由 算法应当在高业务负荷的情 况下,在保证相同的时延条 件下,可以增加网络的通过 量;在轻负荷和中等负荷的 情况下,可以减少每一个分 组的平均时延。
6
所有链路的容量均为10单位 目的节点
路由选择对网络性能的影响。
第5章 路由算法
6
2014/11/24
5.1
λ1
源节点 1 4
路由算法概述 (4)
当λ1=λ2=5时 如果节点1选择1→3→6, 节 点2选择2→5→6, 则由于每条 链路的业务量都只有信道容 量的一半, 因而时延很小。

λ2
2 源节点
止网络连接等。

路由算法是网络层的核心,其主要功能是指引分组通
过通信子网到达正确的目的节点。具体表现为两个方面 的内容:

寻径:为不同的源节点和目的节点对(SD)选择
一条传输路径;

转发:在路由选择好以后,将用户的消息正确地
送到目的节点。
第5章 路由算法 4 2014/11/24
5.1

路由算法概述 (2)
5.1.1 路由选择算法的分类 (1)
路由算法的分类

算法能否跟随网络拓扑变化

非自适应的(不根据实测或估计的网络当前
业务量和拓扑结构来做路由选择。路由事先就 计算好,在网络启动时就下载到网络路由器中 。这种策略的最大优点是简单和开销小)

自适应
第5章 路由算法
11
2014/11/24
5.1.1 路由选择算法的分类 (2)

9 2014/11/24
第5章 路由算法
第5章 内容概述

5.1 路由算法概述
- 5.1.1 路由选择算法的分类
- 5.1.2 对路由选择算法的要求
- 5.1.3 路由算法的实现—路由表


第5章 路由算法
5.2 常用的路由算法
5.4 数学基础—图论 5.5 最短路径算法
10 2014/11/24
查找路由表中的信息,无须再作计算。然而对自适应路由 选择来说,会要求相当数量的计算来维持这张路由表。
第5章 路由算法
5.2 常用的路由算法
5.4 数学基础—图论 5.5 最短路径算法
14 2014/11/24
5.1.3 路由算法的实现—路由表

路由算法的实现通过路由表。 节点上的路由表指明该节点如何选择分组的传送路径。 路径选择原则是使到达目的节点的链路 数最少。

当存在2条以上具有相同链路数的最少链 路数路径时,可以选择其中任意一条。
Fundamental of Communication Networks
通信网络理论基础
第5章 路由算法
第5章 路由算法
1
2014/11/24
第5章 内容概述

5.1 路由算法概述 5.2 常用的路由算法 5.4 数学基础—图论 5.5 最短路径算法
第5章 路由算法
2
2014/11/24
第5章 内容概述

5.1 路由算法概述
- 5.1.1 路由选择算法的分类
- 5.1.2 对路由选择算法的要求
- 5.1.3 路由算法的实现—路由表


第5章 路由算法
5.2 常用的路由算法
5.4 数学基础—图论 5.5 最短路径算法
3 2014/11/24
5.1

路由算法概述 (1)
网络层的功能包括寻址和选择路由,建立、保持和终
算法尽量简单,以减少网络开销。
5 2014/11/24
第5章 路由算法
5.1

路由算法概述 (3)
两个源节点和一个目的节点
通过一个例子来看看路由选择对网络性能的影响:
λ1
源节点 1 4
λ2
。所有链路的容量为10单位
2 源节点
,两个源节点1和2的输入业
务量分别为λ1和λ2, 讨论:
3
5

λ1=λ2=5单位 λ1=5单位, λ2=15单位
路由算法的分类
按路由决策方法
集中式 (指网络的路由是由路由控制中心计算
的,该中心周期性收集各链路的状态,经过路由 计算后周期性地向各网络节点提供路由表。)

分布式(指网络中所有节点通过相互交换路由信
息,独立地计算到达各节点的路由。 )
第5章 路由算法
12
2014/11/24
5.1.1 路由选择算法的分类 (3)
3
5
如果节点1选择1→4→6, 节
6
所有链路的容量均为10单位 目的节点
点2选择2→4→6, 则链路4→6
运载的业务量为10单位, 达到 了链路的最大容量,因而时
延会很大。
第5章 路由算法 7 2014/11/24
5.1
λ1
源节点 1 4
路由算法概述 (5)
当λ1=5, λ2=15时
λ2
2 源节点
相关文档
最新文档