1.什么是RIP。(WHAT)

         RIP,即routing information Protocol,路由信息协议。简单地说就是动态路由协议的始祖,虽然它现在已经几乎不被用到了,但是,当时它的出现具有跨时代的意义。


    2.为什么要有RIP(WHY)
         之前在说静态路由协议的时候,有说到,当需要配置的路由器很多、路由条目很多的时候,利用动态路由协议自动配置,则是省时又省事。可能需要人工敲一上午的静态路由,它可能不到一分钟就能 自动学习到 。当然,还有一点更重要的,也是静态路由不能实现的功能: 它还会自动维护网络 。假如拓扑中的某台路由器当机了,静态路由不会知道它当机了,会依然一直把数据包往它那边送。可是动态路由不一样,它的邻居会自动检测到这台路由器已经挂掉,然后再把这条信息告诉此拓扑的其他邻居。在动态地更改相应的 路由 条目。
    在这里小插一段话。
         路由器 :是一个设备,实实在在的东西。它的作用是,根据数据包的目标IP地址,查找自己的 路由表 ,再把数据包从相应的接口扔出去。
路由 :就是路线,从A到B怎么走。去到100.10.1.20 /24 这地址,走interface fastEthernet 0/1 ?还是 information serial 1/0 ?

路由表:很多路由放在一起,所形成的表,路由器转发数据的依据。


    3.RIP 是怎样工作的?(HOW)
         首先,RIP工作在应用层,它基于UDP的520端口。它到现在有两个版本,我们以第二版为标准。
         它的工作原理其实挺简单的。
         它每隔30秒,不断地向外组 播(版本1是广播) 一个名叫“ Response 的数据包”,这个数据包里面包含着它知道的所有的路由条目,以及到达该路由条目的 metric值 (代价值)。而它的metric值的度量方法很简单,就是“经过一个三层设备,它的metric就自动+1”。
那这个metric值有什么用呢? 它是用来选择最佳路径的,比如说我到达 100.10.1.20/24 这个地方,有两条路都可以去到,一条要经过两个路由器,一条要经过三个路由器,也是就,一个metric为2,一个为3,则RIP就会自动选择metric为2的那条路由,把数据包往那里送。
那如果两条路由的metric值一样呢? 这个那就要公平起见了,那个两条路上轮流发,先在路1发一个数据包,再在路2发一个数据包,然后再是路1,接着路2,这样循环下去。嗯,这种现象有个专业的名词,叫做“ 负载均衡 ”。
         不过,这个RIP的这个评价metric的标准, 有一个很大的缺点 ,就是:它不会管那个考虑该网络的实际情况是怎样的。比如,一条 1Gb/s的光纤和一条1.544Mb/s的T1专线,他们的速度显然是不一样的。但是RIP还是会把他们看成一样,这样一个负载均衡,就会造成对光纤的浪费和对专线的压榨。可能在互联网刚刚出生的阶段,大家的网速都是差不多的,因为都很慢,所以当初RIP这样计算metric值即简单,又方便。但是,互联网发展到后面,网速得到了质的飞跃,这样的metric值计算已经不再适应现在的情况了,所以,被淘汰,也是就是自然而然的事情了。
         还有,每隔30秒发送一个 Response数据包, 同样的邻居也会每隔30秒发送一个Response包过来。所以RIP它有四个相关的计时器,假如30秒内,没有发送过来,可能邻居就不正常了。没事,我会再等等,等到180秒的时候还没有收到Response包,就知道邻居很有可能不正常了。但是不能这么轻易地断言,于是再多给一分钟的机会,也就是240秒后还没有收到邻居的Response包,好吧, 此邻居已挂 。然后再 向外组播,告诉其他路由器,此邻居玩完了,大家的数据包就不要往那里送了,该绕道的绕去吧,没得绕道的,就把相关路由从你们的路由表里面清除吧 。就从新构建出新的路由表,形成新的网络拓扑。
         ——“路由防环的五大机制?”
         ——“1.水平分割;2.最大16跳;3.路由中毒;4.毒性逆转;5.抑制计时器。报告田姐,回答完毕!”