zoukankan      html  css  js  c++  java
  • 路由选择信息协议

    路由信息协议(RIP)是一种在网关与主机之间交换路由选择信息的标准。RIP 是一种内部网关协议。在国家性网络中如当前的因特网,拥有很多用于整个网络的路由选择协议。作为形成网络的每一个自治系统(AS),都有属于自己的路由选择技术,不同的 AS 系统,路由选择技术也不同。

    9a504fc2d5628535789b040592ef76c6a6efce1b9d164ba7

     

    RIP的特点

    (1)仅和相邻的路由器交换信息。如果两个路由器之间的通信不经过另外一个路由器,那么这两个路由器是相邻的。RIP协议规定,不相邻的路由器之间不交换信息。
    (2)路由器交换的信息是当前本路由器所知道的全部信息。即自己的路由表。
    (3)按固定时间交换路由信息,如,每隔30秒,然后路由器根据收到的路由信息更新路由表。(也可进行相应配置使其触发更新)
    适用
    RIP 和 RIP 2 主要适用于 IPv4网络,而 RIPng 主要适用于 IPv6 网络。本文主要阐述 RIP 及 RIP 2。
    RIPng:路由选择信息协议下一代(应用于IPv6)
    (RIPng:RIP for IPv6)RIPng与RIP 1和 RIP 2 两个版本不兼容。
    RIP协议的“距离”其实就是“跳数”(hop count),因为每经过一个路由器,跳数就加1。RIP认为好的路由就是它通过的路由器的数目少,即“距离短”。
    应用
    RIP(Routing information Protocol)是应用较早、使用较普遍的内部网关协议(Interior Gateway Protocol,简称IGP),适用于小型同类网络,是典型的距离向量(distance-vector)协议。文档见RFC1058、RFC1723。
    RIP通过广播UDP报文来交换路由信息,每30秒发送一次路由信息更新。RIP提供跳跃计数(hop count)作为尺度来衡量路由距离,跳跃计数是一个包到达目标所必须经过的路由器的数目。如果到相同目标有二个不等速或不同带宽的路由器,但跳跃计数相同,则RIP认为两个路由是等距离的。RIP最多支持的跳数为15,即在源和目的网间所要经过的最多路由器的数目为15,跳数16表示不可达。

    RIP概述

    -RFC 1058
    -RIP采用贝尔曼—福德(Bellman-Ford)算法
    -目前RIP有两个版本RIPv1和RIPv2。
    -RIP有以下一些主要特性:
    -RIP属于典型的距离矢量路由选择协议。
    -RIP消息通过广播地址255.255.255.255进行发送,RIPv2使用组播地址224.0.0.9发送消息,两者都使用UDP 协议的520端口。
    -RIP以到目的网络的最小跳数作为路由选择度量标准,而不是在链路的带宽和延迟的基础上进行选择。
    -RIP是为小型网络设计的。它的跳数计数限制为15跳,16跳为不可到达。
    -RIP-1是一种有类路由协议,不支持不连续子网设计。RIP-2支持CIDR及VLSM可变长子网掩码,使其支持不连续子网设计。
    -RIP周期性进行完全路由更新,将路由表广播给邻居路由器,广播周期缺省为30秒。
    -RIP的协议管理距离为120。
    RIP是路由信息协议(Routing Information Protocol)的缩写,采用距离矢量算法。在默认情况下,RIP使用一种非常简单的度量制度:距离就是通往目的站点所需经过的链路数,取值为1~15,数值16表示无穷大。RIP进程使用UDP的520端口来发送和接收RIP分组。RIP分组每隔30s以广播的形式发送一次,为了防止出现“广播风暴”,其后续的的分组将做随机延时后发送。在RIP中,如果一个路由在180s内未被刷,则相应的距离就被设定成无穷大,并从路由表中删除该表项。RIP分组分为两种:请求分组和响应分组。
    RIP-1被提出较早,其中有许多缺陷。为了改善RIP-1的不足,在RFC1388中提出了改进的RIP-2,并在RFC 1723和RFC 2453中进行了修订。RIP-2定义了一套有效的改进方案,新的RIP-2支持子网路由选择,支持CIDR,支持组播,并提供了验证机制。
    RIP-2的特性:
    RIP-2 是一种无类别路由协议(Classless Routing Protocol)。
    RIP-2协议报文中携带掩码信息,支持VLSM(可变长子网掩码)和CIDR。
    RIP-2支持以组播方式发送路由更新报文,组播地址为224.0.0.9,减少网络与系统资源消耗。
    RIP-2支持对协议报文进行验证,并提供明文验证和MD5验证两种方式,增强安全性。
    RIP-2能够支持VLSM
    随着OSPF和IS-IS的出现,许多人认为RIP已经过时了。但事实上RIP也有它自己的优点。对于小型网络,RIP就所占带宽而言开销小,易于配置、管理和实现,并且RIP还在大量使用中。但RIP也有明显的不足,即当有多个网络时会出现环路问题。为了解决环路问题,IETF提出了水平分割法,在这个接口收到的路由信息不会再从该接口出去(split-Horizon)。分割范围解决了两个路由器之间的路由环路问题,但不能防止因网络规模较大、主要由延迟因素产生的环路。触发更新要求路由器在链路发生变化时立即传输它的路由表。这加速了网络的聚合,但容易产生广播泛滥。总之,环路问题的解决需要消耗一定的时间和带宽。若采用RIP协议,其网络内部所经过的链路数不能超过15,这使得RIP协议不适于大型网络。

    RIP的防环机制

    1-记数最大值(maximum hop count):定义最大跳数(最大为15跳),当跳数为16跳时,目标为不可达。
    2-水平分割(split horizon):从一个接口学习到的路由不会再广播回该接口。cisco可以对每个接口关闭水平分割功能。
    3-毒性逆转(poison reverse):从一个接口学习的路由会发送回该接口,但是已经被毒化,跳数设置为16跳,不可达。
    4-触发更新(trigger update):一旦检测到路由崩溃,立即广播路由刷新报文,而不等到下一刷新周期。
    5-抑制计时器(holddown timer):防止路由表频繁翻动,增加了网络的稳定性。
    RIP(Routing Information Protocol)是基于D-V算法的内部动态路由协议。它是第一个为所有主要厂商支持的标准IP选路协议,网络。对于更复杂的环境,一般不应使用RIP。
    RIP1作为距离矢量路由协议,具有与D-V算法有关的所有限制,如慢收敛和易于产生路由环路和广播更新占用带宽过多等;RIP1作为一个有类别路由协议,更新消息中是不携带子网掩码,这意味着它在主网边界上自动聚合,不支持VLSM和CIDR;同样,RIP1作为一个古老协议,不提供认证功能,这可能会产生潜在的危险性。总之,简单性是RIP1广泛使用的原因之一,但简单性带来的一些问题,也是RIP故障处理中必须关注的。
    版本
    RIP在不断地发展完善过程中,又出现了第二个版本:RIP2。与RIP1最大的不同是RIP2为一个无类别路由协议,其更新消息中携带子网掩码,它支持VLSM、CIDR、认证和多播。目前这两个版本都在广泛应用,两者之间的差别导致的问题在RIP故障处理时需要特别注意。
    RIP的信息类型
    请求信息(可以是请求一条路由的信息),应答信息(一定是全部的路由)。
    RIP是最常使用的内部网关协议之一,是一种典型的基于距离矢量算法的动态路由协议。在不同的网络系统如Internet、AppleTalk、NOVELL等协议都实现了RIP。他们都采用相同的算法,只是在一些细节上做了小改动,适应不同网络系统的需要。
    RIP有RIP-1和RIP-2两个版本,需要注意的是,RIP-2不是RIP-1的替代,而是RIP-1功能的扩展。比如RIP-2更好地利用原来RIP-1分组种必须为零的域来增加功能,不仅支持可变长子网掩码,也支持路由对象标志。此外,RIP-2还支持明文认证和MD5密文认证,确保路由信息的正确。
    RIP通过用户数据报协议(UDP)报文交换路由信息,使用跳数来衡量到达目的地的距离。由于在RIP中大于15的跳数被定义为无穷大,所以RIP一般用于采用同类技术的中等规模网络,如校园网及一个地区范围内的网络,RIP并非为复杂、大型的网络而设计。但由于RIP使用简单,配置灵活,使得他在今天的网络设备和互联网中被广泛使用。
    局限性
    另外,RIP也有他的局限性。比如RIP支持站点的数量有限,这使得RIP只适用于较小的自治系统,不能支持超过15跳数的路由。再如,路由表更新信息将占用较大的网络带宽,因为RIP每隔一定时间就向外广播发送路由更新信息,在有许多节点的网络中,这将会消耗相当大的网络带宽。此外,RIP的收敛速度慢,因为一个更新要等30s,而宣布一条路有无效必须等180s,而且这还只是收链一条路有所需的时间,有可能要花好几个更新才能完全收敛于新拓扑,RIP的这些局限性显然削弱了网络的性能。
    RIP的管理距离是120。
    RIPV1与RIPV2的相同与不同。不同版本 RIPV1 RIPV2
    1 有类路由 无类路由
    2 不支持VLSM 支持VLSM
    3 广播更新(255.255.255.255)组播更新(224.0.0.9)
    4 自动汇总,不支持手动汇总 自动汇总且可以手动关闭该特性,支持手动汇总
    5 不支持验证 支持验证
    6 产生CIDR 不产生CIDR
    相同
    1抑制计时器
    2度量值(hop count)
    3 防环机制
    4 汇总(默认相同),在边界路由上汇总
    5 使用UDP的520端口
    6负载均衡默认为4条。最大为6条。
    7 缺省每隔30秒更新一次路由表
    RIP的下一跳与METRIC的关系
    metric下一跳
    不同
    大 写进数据库中,等180秒后再写进路由表中 写进数据库中
    小 写进路由表中 替换原有的路由
    相同 不给于响应负载均衡
    默认情况下,配置相应版本的RIP只能接收和发送相应版本的RIP消息。可以配置设备接口限制收发RIP信息的类型。
    RIP的不足之处
    (1)过于简单,以跳数为依据计算度量值,经常得出非最优路由。例如:2跳64K专线,和3跳1000M光纤,显然多跳一下没什么不好。
    (2)度量值以16为限,不适合大的网络。解决路由环路问题,16跳在rip中被认为是无穷大,rip是一种域内路由算法自治路由算法,多用于园区网和企业网。
    (3)安全性差,接受来自任何设备的路由更新。无密码验证机制,默认接受任何地方任何设备的路由更新。不能防止恶意的rip欺骗。
    (4)不支持无类ip地址和VLSM<ripv1>。
    (5)收敛性差,时间经常大于5分钟。
    (6)消耗带宽很大。完整的复制路由表,把自己的路由表复制给所有邻居,尤其在低速广域网链路上更以显式的全量更新。
    常见问题

    什么是RIP
    RIP是一种距离矢量路由协议(Distance Vector Routing Protocol)。基本上,距离矢量路由协议基于距离矢量算法根据目的地的远近(远近=经过路由器的数量)来决定最好的路径。
    2)RIP的作用是什么
    RIP让路由器之间互相传递路由信息。路由器通过RIP,能自动知道远程目的地,而不需要网络管理员给每台路由器添加静态路由信息。
    3)传递路由信息
    RIP把自己所有的路由信息,通过Response包泛洪给邻居。
    4)计算Metric
    RIP用“跳数”来计算cost(metric),每经过一台路由器,“跳数”就增加1。RIP会通过“跳数”最小的路径传输数据包。框架控件
    10工作原理编辑1 、初始化——RIP初始化时,会从每个参与工作的接口上发送请求数据包。该请求数据包会向所有的RIP路由器请求一份完整的路由表。该请求通过LAN上的广播形式发送LAN或者在点到点链路发送到下一跳地址来完成。这是一个特殊的请求,向相邻设备请求完整的路由更新。
    2 、接收请求——RIP有两种类型的消息,响应和接收消息。请求数据包中的每个路由条目都会被处理,从而为路由建立度量以及路径。RIP采用跳数度量,值为1的意为着一个直连的网络,16,为网络不可达。路由器会把整个路由表作为接收消息的应答返回。
    3、接收到响应——路由器接收并处理响应,它会通过对路由表项进行添加,删除或者修改作出更新。
    4、 常规路由更新和定时——路由器以30秒一次地将整个路由表以应答消息地形式发送到邻居路由器。路由器收到新路由或者现有路由地更新信息时,会设置一个180秒地超时时间。如果180秒没有任何更新信息,路由的跳数设为16。路由器以度量值16宣告该路由,直到刷新计时器从路由表中删除该路由。刷新计时器的时间设为240秒,或者比过期计时器时间多60秒。Cisco还用了第三个计时器,称为抑制计时器。接收到一个度量更高的路由之后的180秒时间就是抑制计时器的时间,在此期间,路由器不会用它接收到的新信息对路由表进行更新,这样能够为网路的收敛提供一段额外的时间。
    5、 触发路由更新——当某个路由度量发生改变时,路由器只发送与改变有关的路由,并不发送完整的路由表。

  • 相关阅读:
    C# 实现 Snowflake算法生成唯一性Id
    kafka可视化客户端工具(Kafka Tool)的基本使用(转)
    docker 安装kafka
    Model类代码生成器
    使用docker 部署rabbitmq 镜像
    Vue 增删改查 demo
    git 提交代码到库
    Android ble蓝牙问题
    mac 配置 ssh 到git (Could not resolve hostname github.com, Failed to connect to github.com port 443 Operation timed out)
    okhttp
  • 原文地址:https://www.cnblogs.com/Kconnie/p/3538110.html
Copyright © 2011-2022 走看看