动态选路协议是什么

2023-08-01 05:44:00 生活常识 投稿:无人街七号

动态选路协议(Dynamic routing protocols)用于路由器间的通信,当相邻路由器之间进行通信,以告知对方每个路由器当前所连接的网络,这时就出现了动态选路。动态选路协议主要包括RIP、OSPF和BGP协议。

动态选路协议(Dynamic routing protocols)用于路由器间的通信,当相邻路由器之间进行通信,以告知对方每个路由器当前所连接的网络,这时就出现了动态选路。动态选路协议主要包括 RIP、OSPF 和 BGP 协议。

动态选路协议是什么

简介

动态选路并不改变内核在 IP 层的选路方式。这种选路方式称为选路机制(routing mechanism)。内核搜索路由表,查找主机路由、网络路由以及默认路由的方式并没有改变。仅仅是放置到路由表中的信息改变了—当路由随时间变化时,路由是由路由守护程序动态地增加或删除,而不是来自于自引导程序文件中的 route 命令。

正如前面所描述的那样,路由守护程序将选路策略(routing policy)加入到系统中,选择路由并加入到内核的路由表中。如果守护程序发现前往同一信宿存在多条路由,那么它(以某种方法)将选择最佳路由并加入内核路由表中。如果路由守护程序发现一条链路已经断开(可能是路由器崩溃或电话线路不好),它可以删除受影响的路由或增加另一条路由以绕过该问题。

在像 Internet 这样的系统中,目前采用了许多不同的选路协议。Internet 是以一组自治系统(AS,Autonomous System)的方式组织的,每个自治系统通常由单个实体管理。常常将一个公司或大学校园定义为一个自治系统。NSFNET 的 Internet 骨干网形成一个自治系统,这是因为骨干网中的所有路由器都在单个的管理控制之下。

每个自治系统可以选择该自治系统中各个路由器之间的选路协议。这种协议我们称之为内部网关协议 IGP(Interior Gateway Protocol)或域内选路协议(intradomain routing protocol)。最常用的 IGP 是选路信息协议 RIP。一种新的 IGP 是开放最短路径优先 OSPF(Open Shortest Path First)协议。它意在取代 RIP。另一种 1986 年在原来 NSFNET 骨干网上使用的较早的 IGP 协议—HELLO,现在已经不用了。

新的 RFC[Almquist1993]规定,实现任何动态选路协议的路由器必须同时支持 OSPF 和 RIP,还可以支持其他 IGP 协议。

外部网关协议 EGP(ExterierGatewayProtocol)或域内选路协议的分隔选路协议用于不同自治系统之间的路由器。在历史上,(令人容易混淆)改进的 EGP 有着一个与它名称相同的协议:EGP。新 EGP 是当前在 NSFNET 骨干网和一些连接到骨干网的区域性网络上使用的是边界网关协议 BGP(BorderGatewayProtocol)。BGP 意在取代 EGP。

分类

动态路由协议可以按工作原理,工作范围,是否携带掩码来划分。

按工作原理分

距离矢量协议:路由器依赖自己相邻的路由器学习路由。如 RIP,EIGRP

链路状态协议:把路由器分成区域,收集区域内所有路由器的链路状态生成网络拓扑图,每个路由器根据拓扑结构计算出路由,如 OSPF2.

按工作范围分

IGP(InteriorGatewayProtocol):同一自治系统(使用相同路由协议的网络集合)内部交换路由信息,如 OSPF

EGP(ExteriorGatewayProtocol):不同自治系统间交换路由信息,如 BGP3.

按路由更新时是否携带子网掩码

有类路由协议:已被淘汰,如 RIPv1,即宣告时不支持可变长子网掩码,只使用默认的 ABC 三类 IP 的默认掩码;

无类路由协议:即宣告时支持可变长子网掩码,现在都是无类路由协议。

RIP 协议

概述

报文格式

RIP 只使用“跳数”来决定到达远程网络的最佳方式,并规定源站和目的站之间经过的路由器最多为 15 个,如果路由器收到了路由更新信息,且把距离加 1 后等于 16(意为无穷大),就认为该目的网络不可达。在小型网络中,RIP 会运行良好, 但是对于使用慢速 WAN 链接的大型网络或者对于安装有大量路由器的网络来说,它的效率很低。

分类

RIP 协议分为 RIPv1 和 RIPv2 两个版本,二者具有很多相同的功能。它们的区别在于:RIPv1 是有类路由协议,该网络中的所有设备必须使用相同的子网掩码,RIPv1 不发送带有子网掩码信息的更新数据,而 RIPv2 是无类路由协议,RIPv2 在路由更新时携带子网信息;RIPv1 不支持 VLSM(VariableLengthSubnetMask,可变长子网掩码)和 CIDR(ClasslessInter-DomainRouting,无类别域间路由),而 RIPv2 支持 VLSM 和 CIDR;RIPv1 采用广播更新,而 RIPv2 采用组播更新;RIPv1 不提供认证,而 RIPv2 提供认证。

工作原理

RIP 协议每 30 秒向相邻路由器发送一次路由更新信息,同时监听来自网络中的相邻路由器的路由更新信息,从而实现对本地路由表的动态维护,以确保 IP 层发送数据时选择正确的路由。针对路由表中某一条路由信息,如果 180 秒内没有接收到新的关于它的路由更新信息,则将其标记为失效,即跳数值标记为 16;再经过 120 秒后,如果仍然没有收到更新信息,则将该条失效信息删除。

RIP 协议中对“距离”的定义为:从一个路由器到直接连接的网络的距离定义为 1,从一个路由器到非直接连接的网络的距离定义为所经过的路由器数目加 1。因此,这里的“距离”也称为“跳数”,因为每经过一个路由器,跳数就加 1。

依据距离向量算法,当网络中的路由器收到相邻路由器的一个 RIP 报文后,执行如下操作:

先修改 RIP 报文中的所有条目,将“下一跳”字段中的地址都改为发出该 RIP 报文的路由器的地址,并将所有的“距离”字段的值加 1。

对修改后的 RIP 报文中的每一个条目,重复以下步骤:若条目中的目的网络不在路由表中,则将该条目添加到路由表中。否则,若“下一跳”字段给出的路由器地址是相同的,则用收到的条目替换原路由表中的条目。否则,若收到的条目中的距离小于路由表中条目的距离,则进行更新。否则,什么都不做。

若超过 3 分钟还没有收到相邻路由器更新路由表的信息,则将此相邻路由器记为不可达的路由器,即将距离置为 16(距离 16 表示不可达)。

OSPF 协议

概述

现在 Internet 已应用于军事,科技,教育,工农业等各个领域,发挥着越来越重要的作用,它标志着信息时代的兴起。Internet 的重要基础是 TCP/IP 协议,该协议是计算机用于网络通信的标准,它是一个协议族,包含控制,传输,标识等各方面的子协议。

TCP/IP 协议中,寻找一台计算机到另一台计算机的路由是很重要的,一方面,要判断是否能找到路,~方面,找到路后找一条短的路(花费时间最小),再一方面,不能循环。最好还应该能动态处理路由变化,如:接口的 uP 和 DOWN,时间花费的变网络结构的改变等。网络上的节点通常通过路由器与整个网络连续,需要知道到达网络的另一个节点的路由。当 IP 包要在网络上传送时,需要进行 IP 选路。

IP 选路(路由):IP 可以从上层的 TCP、UDP、ICMP 和 IGMP 协议中接收数据报(即在本地生成的数据报)进行发送,或者从一个网络接口接收数据报(待转发的数据报)进行发送。在发送之前,IP 层都要查询在内存中的路由表来确定往那个网络接口发送数据报文。每当数据报来自某个网络接口时,IP 首先检查目的 IP 地址是否为本机的 IP 地址之一或者 IP 广播地址。如果确实是,数据报就被送到由 IP 首部协议字段所指定的协议模块进行处理。如果数据报的目的不是这些地址,那么如果 IP 层被设置为路由器的功能,那么就对数据报进行转发;否则数据报被丢弃。然后发送 ICMP 报文给源主机通知目的地不可达,并且给出原因。

工作原理

OSPF 协议的基本思路如下:在自治系统中每一台运行 OSPF 的路由器收集各自的接口、邻接信息称为链路状态,通过 Flooding 算法在整个系统广播自己的链路状态,使得在整个系统内部维护一个同步的链路状态数据库,根据这一数据库,路由器计算出以自己为根,其它网络节点为叶的一根最短的路径树,从而计算出自己到达系统内部各可达的最佳路由。它处理在一个自治系统中,路由器的网络的路由表信息。

OSPF 路由协议是一种典型的链路状态(Link—state)的路由协议,一般用于同一个路由域内。在这里,路由域是指一个自治系统(Autonomous System),即 AS,它是指一组通过统一的路由政策或路由协议互相交换路由信息的网络。在这个 As 中,所有的 OSPF 路由器都维护一个相同的描述这个 As 结构的数据库,该数据库中存放的是路由域中相应链路的状态信息,OSPF 路由器正是通过这个数据库计算出其 OSPF 路由表的。

作为一种链路状态的路由协议,OSPF 将链路状态广播数据包 LSA(LinkStateAdvertisement)传送给在某一区域内的所有路由器,这一点与距离矢量路由协议不同。运行距离矢量路由协议的路由器是将部分或全部的路由表传递给与其相邻的路由器。

BGP 协议

概述

BGP(Border Gateway Protoc01)边界网关协议是一种路由协议,用于交换因特网自治域系统间的路由信息,其主要功能是在系统之间交换网络可达信息(NetworkLayerReachableInformation,简称 NLRI)。随着网络拓扑的日益复杂,多个自治域系统之间通信的要求越来越高,需要配置的策略越来越复杂,BGP 协议已经成为因特网路由体系的重要组成部分。国际和国内许多的网络和电信设备供应商已经实现和配置 BGP 协议,用于支撑因特网运行,减少交换和路由设备的运行负荷。

BGP 协议是一种路径向量协议,在一定程度上综合了距离向量和链路状态算法的优点。BGP 认为自治域内的路由选择由 IGP 完成,并不对自治域内的路由作任何假设。BGP 不需要所有自治域都运行同样的内部路由协议,对底层的网络拓扑没有任何限制,通过 BGP 的 Update 消息交换的信息已经足够建立一个自治域连接图。有了自治域连接图,就能够消除路由环路,并在自治系统内应用路由策略。

BGP 是一种不同自治系统的路由器之间进行通信的外部网关协议。BGP 是 ARPANET 所使用的老 EGP 的取代品。RFC1267[Lougheed and Rekhter1991]对第 3 版的 BGP 进行了描述。RFC1268[Rekhter and Gross1991]描述了如何在 Internet 中使用 BGP。下面对于 BGP 的大部分描述都来自于这两个 RFC 文档。同时,1993 年开发第 4 版的 BGP(见 RFC1467[Topolcic1993])。

工作原理

BGP 处于 Idle 状态,当收到 bgpStart 件,初始化所有 BGP 资源,初始化到对端的 TCP 接。当侦听到远端连接请求,转到 Connect 状态;

Connect 状态下,若 TCP 连接成功,发送 EN 消息到对端,转到 OpenSent。如果 TCP 连接败,转到 Active 状态;

在 Active 状态,BGP 初始化 TCP 连接建立居关系,若连接成功,发送 OPEN 消息,转到 enSent 状态。若连接超时,到 Connect 状态;

在 OpenSent 状态,若收到 BGP 对等体发来确的 OPEN 消息,发送 KEEPALIVE 消息,转到 enConfirm 状态。若收到不正确 OPEN 消息,转 Idle 状态。若 TCP 连接断开,转到 Active 状态;

在 OpenConfirm 状态,若收到对端 EPALIVE 消息,到 Established 状态。若出现错,发送 NOTIFICATION 消息,改变状态到 Idle;

在 Established 状态,BGP 和对等体之间交 UPDATE、NOTIFICATION 和 KEEPALIVE 消息。出现错误,发送 NOTIFICATION 消息,转到 Idle。

BGP 邻居关系建立后开始交换完整的 BGP 由表,之后当路由有变化时发送路由更新操作即 UPDATE 消息。BGP 不要求周期性地刷新路由,只有周期性的 KEEPALIE 信息在形成 BGP 邻关系的路由器之间发送,以保证 BGP 邻居关系维持。如果在。路由信息交换的过程中发生错误,其中的一台路由器向邻居发送 NOTIFICATION 消息指出错误的类型并关闭 BGP 连接。

标签: # 协议 # 动态
声明:犀牛文库所有作品(图文、音视频)均由用户自行上传分享,仅供网友学习交流。若您的权利被侵害,请联系admin@qq.com