路由算法之RIP、OSPF、BGP( The Ruting Agorithm of RIP OSPF BGP)

路由算法之RIP、OSPF、BGP

简介

路由算法‌是用于在网络中选择最佳路径的算法,旨在找到从源路由器到目的路由器的最低费用路径。路由算法可以根据其自适应能力分为静态路由算法和动态路由算法。‌

静态路由算法

静态路由算法是非自适应的,需要网络管理员手工配置路由信息。其优点包括简单可靠、负载稳定,适用于拓扑变化小的网络。然而,静态路由算法的缺点是路由更新慢,不适合大型网络。它通常用于安全性较高的军事网络和小型商业网络。

动态路由算法

动态路由算法是自适应的,路由器之间彼此交换信息,根据算法优化出路由表项。动态路由算法的优点是路由信息更新快,能够及时响应链路费用和网络拓扑的变化,适用于大型网络。但其缺点是算法复杂,网络负担较高。动态路由算法通常用于大型商业网络。

动态路由算法的分类

动态路由算法可以分为两类:

  1. 链路状态(LS)算法‌:如BGP,要求每个路由器掌握完整的网络拓扑信息,使用Dijkstra算法用得到最短路径。
  2. 距离向量(DV)算法 ‌:如RIP,路由器只掌握物理连接的相邻路由器和链路费用信息。

自治系统和边界网关协议

在大型网络中,自治系统(Autonomous System, AS)被用来管理路由信息。自治系统内部的路由器使用内部的路由选择协议确定分组在自治系统内部的路由,而自治系统之间的路由器则采用边界网关协议(BGP)进行路由选择。

内部网关协议RIP

RIP协议应该是一种最简单的内部网关协议了。

内部网关协议是跟外部网关协议相对的。在自治系统(比如校园网)里面用的路由协议就是内部网关协议,而在自治系统和自治系统之间进行路由的是外部网关协议。

RIP协议是一个距离向量路由协议,它以跳数作为评价标准,跳数越少,距离越短,最大跳数15,超过表示距离不可达。因此RIP协议只适用于小型网络。

工作原理:

(1)RIP协议基于你有一个思想,我有一个思想,我们交换思想就可以得到更全面的想法一样,路由器仅和相邻的路由器交换信息;

(2)路由器交换的信息就是自己目前的路由表,具体是目的网络,最短距离,下一条网络;

(3)RIP协议按固定时间交换信息,比如30秒,就交换一次路由表信息,如果超过了某个固定时间(比如三分钟)还没有交换信息,说明目的路由器不可达,将距离设置为16。

就这样进行下去,最终就可以得到正确的路由。

需要注意的是每一个路由器的路由表是不同的,路由表并没有指出去目的网络的一个路径,而是仅给出下一跳的地址。

但是RIP虽然简单,但是有个缺点,就是会以讹传讹,坏消息传的很慢。

举个例子,本来路由器A连接这网络1,路由器B连接这路由器A。突然网络1瘫痪了,那么路由器A就把网络1的路径长度设置为16,但是隔了一段时间见路由器B却跟路由器A说我到网络1的距离是2(之前的错误信息),然后A就以为到网络1的距离是3,然后又跟B交换信息,B以为到网络1的距离是4,就这样一直传递错误的信息,直到距离到了16,才知道目的网络不可达。但是知道这个事实却花了好几分钟。

RIP使用UDP数据报进行传送。

内部网关协议OSPF

OSPF同样是内部网关协议的,但是OSPF是基于链路状态的。这个链路状态包括连通性、费用、距离、时延、带宽等信息。换句话说,OSPF考虑问题更全面,因为最短路径应该是时间最短的,而路由的时间跟上面的因素而不仅仅是跳数有关。

工作原理:

(1)OSPF向所有路由器发送信息,它使用一种泛洪法(路由器的一种转发方式),向所有输出接口发送信息,这样最后所有的路由器都会得到这个消息的副本。

(2)发送的信息是与本路由器相邻的路由器的链路状态信息。

(3)只有当链路状态发生变化时,才会使用泛洪法转发信息。

经过上面的步骤,最后每个路由器都会得到一个全网的拓扑结构(注意RIP并没有这个),有了这个图,就可以使用最短路径算法(比如Dijkstra提出的最短路径算法)找到一条最短路径了,不过最后填入路由表的还是下一跳的信息。

OSPF的优点在于收敛快,适用于较大型的网络。

为了减少网络上的通行量,已经减少上述全网的拓扑结构的规模,可以将一个系统划分为不同的区域,这样泛洪法交换信息只局限于一个区域。

OSPF直接使用IP数据报进行封装传送。

边界网关协议BGP

与内部网关协议不同,边界网关协议的目标并不是找到到目的网络的一个最短路径,而是找到一个合适的路径,因此BGP称为路径向量协议。

理由如下:

(1)互联网规模太大,如果使用最短路径算法计算时间将会很久。

(2)不同的自治系统有不同的策略,就好像不同的国家有不同的法律一样,有些路由器可能会过滤一些请求。

工作原理:

(1)在每个自治系统里面选择至少一个BGP发言人,这个角色是用来跟相邻自治系统来交换信息的,信息包括到达某个网络所要经过的一系列自治系统。

(2)当BGP发言人互相交换了网络可达性的信息后,各BGP发言人就根据所采用的策略从收到的路由信息中找出到达个自治系统的合适的路由。

BGP协议交换路由信息的节点数量级是自治系统的量级。

相关推荐
EasyDSS2 小时前
视频监控从安装到优化的技术指南,视频汇聚系统EasyCVR智能安防系统构建之道
大数据·网络·网络协议·音视频
rufeike2 小时前
UDP协议理解
网络·网络协议·udp
江理不变情3 小时前
海思ISP调试记录
网络·接口隔离原则
世界尽头与你3 小时前
【安全扫描器原理】网络扫描算法
网络·安全
GKoSon4 小时前
加入RPC shell指令 温箱长时间监控
网络·网络协议·rpc
夸克App4 小时前
实现营销投放全流程自动化 超级汇川推出信息流智能投放产品“AI智投“
运维·人工智能·自动化
Rainbond云原生4 小时前
83k Star!n8n 让 AI 驱动的工作流自动化触手可及
运维·人工智能·自动化
木觞清4 小时前
深度对比评测:n8n vs Coze(扣子) vs Dify - 自动化工作流工具全解析
运维·自动化
hgdlip5 小时前
关闭IP属地显示会影响账号的正常使用吗
网络·网络协议·tcp/ip·ip属地
中云时代-防御可测试-小余5 小时前
高防IP是如何防护DDoS攻击和CC攻击的
运维·服务器·tcp/ip·安全·阿里云·ddos·宽度优先