路由算法是一种制定将数据包从源传输到目的地的路线或路径的过程。它们有助于有效地引导互联网流量。数据包离开源后,可以从许多不同的路径中选择到达目的地。路由算法以数学方式计算数据包可以通过的最佳路径,即"成本最低的路径"。

路由算法的类型

路由算法大致可分为两类:自适应路由算法和非自适应路由算法。它们可以进一步分类,如下图所示 -

自适应路由算法

自适应路由算法,也称为动态路由算法,根据网络条件动态地做出路由决策。它根据网络流量和拓扑构建路由表。他们尝试根据跳数、传输时间和距离计算优化路线。

三种流行的自适应路由算法是 -

  • 集中式算法 - 它利用有关网络的全局知识找到源节点和目标节点之间的成本最低的路径。因此,它也被称为全局路由算法。

  • 孤立算法 - 该算法使用本地信息而不是从其他节点收集信息来获取路由信息。

  • 分布式算法 - 这是一种分散式算法,以分布式方式迭代计算源和目的地之间的最小成本路径。

非自适应路由算法

非自适应路由算法,也称为静态路由算法,构建静态路由表以确定要发送数据包的路径。静态路由表是根据网络启动时存储在路由器中的路由信息​​构建的。

两种非自适应路由算法为 -

  • 泛洪 - 在泛洪中,当数据包到达路由器时,它会被发送到除它到达的链路之外的所有传出链路。泛洪可能是不受控制的、受控的或选择性的泛洪。

  • 随机游走 - 这是一种概率算法,其中路由器随机将数据包发送到其任何一个邻居。