发布网友 发布时间:2022-10-09 19:04
共1个回答
热心网友 时间:2023-11-27 06:01
路由选择协议的核心是路由算法。即需要一种算法来获取路表中的各项,一个比较好的路由选择算法应该有以下特点[BELL86]:
一个实际的路由选择算法,应该尽可能的接近于理想的算法,在不同的应用条件下,可以对上面提出的六个方面有不同的侧重。
倘若从路由算法能否随网络的通信量或拓扑自适应的进行调整变化来划分,则只有两大类:静态路由选择策略和动态路由选择策略。静态路由选择策略也叫做非自适应路由选择,其特点是简单和开销较小,但不能即使适应网络状态的变化。对于很简单的小网络,完全可以采用静态路由选择,用人工配置每一条路由。动态路由选择也叫做自适应路由选择,其特点是能够较好的适应网络状态的变化,但实现起来较为复杂,开销也比较大,因此动态路由选择适用于较复杂的大网络。
互联网采用的路由选择协议主要是自适应的(动态的),分布式路由选择协议。由于以下两种原因,互联网采用分层次的路由选择协议:
为此,可以把整个互联网划分为许多较小的自治系统AS(autonomous system),自治系统AS是在单一技术管理下的一组路由器,而这些路由器使用一种自治系统内部的路由选择协议和共同的度量,一个AS对其他AS表现的出是一个单一的和一致的路由选择策略。
在目前的互联网中,一个大的ISP就是一个自治系统。这样,互联网就把路由选择协议划分为两大类:
自治系统之间的路由选择协议也叫做域间路由选择(interdomain routing),而在自治系统内部的路由选择叫做域内路由选择(intradomain routing)。如图4-31
RIP(routing information protocol)是内部网关协议IGP中最先得到广泛使用的协议[RFC1058],也叫路由信息协议,RIP是一种分布式的基于距离向量的路由选择协议。最大的优点就是简单。
RIP协议要求网络中的每一个路由器都要维护从它自己到其他每一个目的网络的距离记录(因此这是一组距离,叫做距离向量),RIP将距离定义如下:
从一路由器到直接连接的网络的距离为1,从路由器到非之间的网络的距离定义为所经过的路由器数+1。
RIP协议的距离也称之为跳数,但是一条跳数最多只能包含15个路由器,因此,当距离=16时,就相当于不可达。因此RIP只能适用于小型互联网。
注意的是,到直接连接的网络也定义为0(采用这种定义的理由是:路由器在和直接连接在该网络上的主机进行通信并不需要经过另外的路由器,既然经过每一个路由器都要将距离增加1,那么不经过路由器就不需要+1,就是0)。
RIP不能在两个网络之间同时使用多条路由。RIP选择一条具有最少路由器的路由(最短路由),哪怕还存在另一条高速低延时的但是路由器较多的路由。
路由器在刚开始工作的时候,其内部路由表是空的。然后路由器就可以和直接相连的几个网络的距离(这些距离为1),接着,每个路由器和与自己相连的路由器不断交换路由表信息,经过若干次更新后,所有的路由器最终就可以知道本自治系统中任何一个网络地址和最短下一跳路由器的地址。
路由器最主要的信息是:到某个网路的距离(最短距离),以及下一跳的地址,路由表更新的原则是找出到每个网络的最短距离,这种算法又称之为距离向量算法。
对每一个相邻的路由器发送过来的RIP报文,进行以下步骤:
算法描述:其实就是求一个路由器到另一个路由器的最短距离。
例题:
已知路由器R6有表4-9(a)所表示的路由表,现在收到相邻路由器路由表R4发过来的路由更新信息,如图4-9(b)所示。试更新路由器R6的路由表。
解:首先把R4发过来的路由表中的距离都+1:
把这个表和R6的路由表进行比较:
RIP协议让每一个自治系统中的所有路由都和自己的相邻路由器定期交换路由表信息,并不断更新路由表,使得每从每一个路由器到每一个目的网络的路由都是最短距离(也就是跳数最小)。
现在比较新的RIP协议报文格式是1998年提出的RIP2。
RIP协议使用运输层的用户数据报(UDP端口为520)进行传输。
RIP报文由首部和路由部分组成。
RIP首部占4个字节,其中的命令字段指出报文的意义。
RIP2报文中的路由部分有若干路由信息组成,每个路由信息需要用20字节。地址标识符(又称地址列别)字段用来标识所用的地址协议。如果采用IP地址就为2。路由标记填入自治系统号ASN(Autonomous System Number),这是考虑使用RIP有可能收到本自治系统以外的路由选择信息,再后面指出某个网络地址,下一跳路由器地址以及到此网络的距离,一个RIP报文最多可以包含25个路由,因而RIP报文的最大长度是4+20x25=504字节。如果超过,则必然再使用以恶搞RIP报文来传送。
RIP还具有简单的鉴别功能,若使用鉴别功能,则将原来写入第一个路由信息(20字节)的位置用作鉴别,这时应该将地址标识符置为全1(0xFFFF),而路由标记写入鉴别类别,剩下的16字节作为鉴别数据,在鉴别数据之后才能写入路由信息,但这时只能写入24个路由信息。
RIP存在的一个问题是当网络出现故障的时候,要经过比较长的时间才能将信息传送到所有的路由器,RIP协议的这一特点是:好消息传播的很快,而坏消息传播的很慢,网络出现故障的传播时间往往需要经过较长时间,这是RIP协议的一个主要缺点。
为了使坏消息传播的更快些,可以采用多种措施,例如,让路由器记录收到某特定路由信息的接口,而不是让同一个路由信息再通过此接口反方向传送。
总之,RIP协议最大的优点是实现简单,开销较小,但RIP协议缺点也很明显,首先*了网络规模,因为路由器最大的跳数是15跳,一般中大型网络规模RIP协议就不适用了。其次就是路由器之间交换的路由信息是路由器中完整的路由表,因而随着网络规模变大,开销也就增加。最后就是好消息传播的很快,坏消息传播的很慢。