当前位置:文档之家› RIP协议实现

RIP协议实现

目录

1 、课程设计目的 (1)

1 、课程设计目的

了解RIP协议的原理和应用等相关知识,通过距离矢量算法来实现最短传输路径的路由选择。通过本次课程设计,可以对路由表的建立和路由信息的更新等有更直观和清晰的认识。

2 、课程设计要求

根据所选的课题需求,按如下要求编写寻求最短路径的程序。

1)程序提示用户输入有向图定点数目和源点。程序根据用户的输入创建类,分配所需空间

2)程序提示用户输入有向图的邻接矩阵。

3)输出源点到其它各点的最短路径。

例如,V0—>V2;V0,V3,V2

3、相关知识

D-V算法实现

距离矢量(DISTANCE-VECTOR,简称D-V)算法(也称BELLMAN-FORD 算法)周期性地将路由表信息的拷贝在路由器之间传送。当网络拓扑变化时,也会将更新信息及时传送给路由器。每一个路由器只能接收到网络中相邻路由器的路由表,就如图所示,路由器B接收到相邻路由器A的信息,通过增加一个距离矢量数(例如一个跳数)来增大距离矢量,然后将更新的路由表信息传送给相邻路由器C。这种逐步过程发生在相邻路由器之间。

距离矢量算法的数学模型如下:

我们用D(i,j)来表示从实体i到j的最佳路由的Metric,i、j可以是系统中的任意一对实体,用d(i,j)来表示单个跳数的花费,也就是从i直接到j的花费,如果i 与j不是直接相邻的,则d(i,j)为无穷大。这样任意两个实体间的最佳Metric可以表示如下:

D(i,j)=0 对所有的i

D(i,j)=min [ D(i,j)+d(i,k)] i不等于k时

由于我们把非相邻两实体间的d(i,j)定义为无穷大,当表达式中k不是i的相邻主机或路由器时,D(i,j)永远不可能为最小,故我们也可以把k限定为与i相邻。由此我们可以得出一个基于这个数学模型的计算Metric的简单算法:实体i接收它的邻居们k发送给它的到目标主机j的距离评价,并加上d(i,j),在这里是通过i,k之间网络所需的cost 值,接下来i比较来自所需邻居的信息,并选择其中最小的。可以证明,在拓扑结构不变的情况下该算法在有限时间内收敛于正确的D(i,j)。

距离矢量算法通过上述方法累加网络距离,并维护网络拓扑信息数据库。使用这种算法,路由器并不能知道整个网络的确切拓扑结构。

1)RIP实现

图1 RIP路由表初始化

●RIP 启动时的初始路由表仅包含本路由器的一些直连接口路由。

●RIP 协议启动后向各接口广播一个 Request 报文。

●邻居路由器的 RIP 协议从某接口收到 Request 报文后,根据自己的

路由表,形成 Response 报文向该接口对应的网络广播。

●RIP 接收邻居路由器回复的包含邻居路由器路由表的Response 报文,

形成自己的路由表。

RIP根据D-V算法的特点,将协议的参加者分为主动机和被动机两种。主动机主动向外广播路由刷新报文,被动机被动地接收路由刷新报文。一般情况下,主机作为被动机,路由器则既是主动机又是被动机,即在向外广播路由刷新报文的同时,接收来自其它主动机的D-V报文,并进行路由刷新。

图2 RIP路由表更新

RIP 协议以 30 秒为周期用 Response 报文广播自己的路由表。

收到邻居发送而来的 Response 报文后,RIP 协议计算报文中的路由项的度量值,比较其与本地路由表路由项度量值的差别,更新自己的路由表。

报文中路由项度量值的计算: metric' = MIN(metric + cost, 16),metric 为报文中携带的度量值信息,cost 为接收报文的网络的度量值开销,缺省为 1(1 跳),16 代表不可达。

4 、课程设计分析

1、重要数据结构

用于路由表初始化:

typedef struct

{

int dis;

int from;

}RoutNode; /*路由表结构体,存放路由结点、权值信息*/

2、创建文本文件,用于初始化路由表

void InitData(FILE* pfile);

这是个文本文档,为了方便初始化路由表,建立一个二维数组矩阵,正数表示两结点之间路径距离(权值),-1表示两结点之间没有路径。

输出所有的路由表

void OutputRoutData(); /*按编排格式输出二维数组矩阵*/

3、结点之间进行信息交换,更新路由表

send点向recv点发送自己的路由表,两结点之间进行信息交换。

void Communication(int recv, int send)

{

int i;

for (i=0; i

{

{

if (data[recv][i].dis < 0)/*如果recv到i号节点无路径*/

if (data[send][i].dis > 0)/*如果send节点到i号节点有路线*/

这里有两种情况:

1)、if (data[send][i].dis > 0)/*如果send节点到i号节点有路线*/

{

data[recv][i].dis = data[send][i].dis + data[recv][send].dis;

data[recv][i].from = send;

}

当send点与i点之间有路径,而recv点与i点之间没有路径,这是可以通过send点来建立recv点与i点的连接;

2)、else if (data[recv][i].dis > data[send][i].dis + data[recv][send].dis)/*如果现有路径比新路径远*/ {

data[recv][i].dis = data[send][i].dis + data[recv][send].dis;

data[recv][i].from = send; }

当send 点和recv 点和i 点都有路径,就通过比较两点到i 点的距离来确定两结点间的最短路径。

4、算法流程图

N

Y

N

Y

图3 D-V 算法流程

开始 初始化路由表 结点进行信息交换 是否存在路径

是否为最短路径

更新路由表 输出路由表

结束

5 、程序清单及注释

/*Routine.c TC2.0 WinXp*/

#include

#include

#define ROUTNUM 7

typedef struct

{

int dis;

int from;

}RoutNode;

RoutNode data[ROUTNUM][ROUTNUM];/*路由表*/

void InitData(FILE* pfile);/*从数据文件读取数据,初始化路由表*/

void OutputRoutData();/*输出所有的路由表*/

void Communication(int recv, int send);/*send点向recv点发送自己的路由表*/ void Exchange();/*所有节点进行一次数据交换,更新路由表*/

void main()

{

int start,end;

int i;

FILE *pfile;

pfile = fopen("data.txt", "r");

if (pfile == NULL)

{

printf("data file failed to open, press any key to quit.\n");

getchar();

return;

}

else

InitData(pfile);

fclose(pfile);

printf("\nInitial State:\n");

OutputRoutData();

for (i=0; i

{

Exchange();

}

printf("\nState Exchanged:\n");

OutputRoutData();

printf("input the start node(%d-%d) : ", 0, ROUTNUM-1); scanf("%d", &start);

printf("input the end node(%d-%d) : ", 0, ROUTNUM-1); scanf("%d", &end);

if (start==end || start<0 || start>6 || end<0 || end>6)

{

printf("\nwrong input, press any key to quit.\n");

getchar();

return;

}

else

{

int cur = start;

int total = 0;

if (data[start][end].dis < 0)

{

printf("No routine find!\n");

getchar();

return;

}

printf("%c->", cur+65);

while (data[cur][end].from >= 0)

{

total += data[cur][data[cur][end].from].dis;

printf("%c->",data[cur][end].from+65);

cur = data[cur][end].from;

}

total += data[cur][end].dis;

printf("%c\ntotal distance=%d", end+65, total);

getchar();

return;

}

}

void InitData(FILE* pfile)

{

char num[10];

int i=0;

char c;

int m,n;

fseek(pfile, 0, 0);

for (m=0; !feof(pfile)&&m<7; m++)

{

for (n=0; !feof(pfile)&&n<7; n++)

{

while (!feof(pfile))

{

c = fgetc(pfile);

if (c==',')/*读完一个数字*/

{

num[i] = '\0';

data[m][n].dis = atoi(num);

data[m][n].from = -1;

i = 0;

break;

}

else if ((c>='0' && c<='9') || c=='-')/*如果读到数字或符号*/

{

num[i++] = c;

}

}

}

}

}

void OutputRoutData()

{

int i,j;

printf(" ");

for(i=0; i

{

printf("< %d >", i);

}

printf("\n");

for (i=0; i

{

printf("%d ", i);

for (j=0; j

{

if (data[i][j].dis < 0)/*如果无路径*/

printf("- ");

else

printf("%-5d", data[i][j].dis);

if (data[i][j].from < 0)/*如果未经过其它节点*/

printf("- ");

else

printf("%c ", data[i][j].from+65);

}

printf("\n");

}

}

void Communication(int recv, int send)

{

int i;

for (i=0; i

{

if (data[send][i].dis > 0)/*如果send节点到i号节点有路线*/

{

if (data[recv][i].dis < 0)/*如果recv到i号节点无路径*/

{

data[recv][i].dis = data[send][i].dis + data[recv][send].dis;

data[recv][i].from = send;

}

else if (data[recv][i].dis > data[send][i].dis + data[recv][send].dis)/*如果现有路径比新路径远*/

{

data[recv][i].dis = data[send][i].dis + data[recv][send].dis;

data[recv][i].from = send;

}

}

}

}

void Exchange()

{

int i,j;

for (i=0; i

{

for (j=0; j

{

if (data[i][j].dis > 0)/*如果两个节点之间有路径*/

{

Communication(j,i);/*将i号节点的路由表发送给j号节点*/

}

}

}

}

6 、运行结果及分析

图4 运行结果图

图5 Data.txt文本文档7 、参考文献

[1] 宋凯、刘念,《计算机网络》.清华大学出版社,2010

[2] 谢希仁,《计算机网络(第五版)》.电子工业出版社,2008

[3] 谢希仁.,《计算机网络教程》.人民邮电出版社,2007

RIP协议原理及配置实验报告

通信网络实验 ——RIP协议原理及配置实验报告 班级: 学号: 姓名:

RIP协议原理及配置实验报告 一、实验目的 1.掌握动态路由协议的作用及分类 2.掌握距离矢量路由协议的简单工作原理 3.掌握RIP协议的基本特征 4.熟悉RIP的基本工作过程 二、实验原理 1.动态路由协议概述 路由协议是运行在路由器上的软件进程,与其他路由器上相同路由协议之间交换路由信息,学习非直连网络的路由信息,加入路由表。并且在网络拓扑结构变化 时自动调整,维护正确的路由信息。 动态路由协议通过路由信息的交换生成并维护转发引擎需要的路由表。网络拓扑结构改变时自动更新路由表,并负责决定数据传输最佳路径。动态 路由协议的优点是可以自动适应网络状态的变化,自动维护路由信息而不用网络管 理员的参与。其缺为由于需要相互交换路由信息,需要占用网络带宽,并且要占用 系统资源。另外安全性也不如使用静态路由。在有冗余连接的复杂网络环境中,适 合采用动态路由协议。目的网络是否可达取决于网络状态 动态路由协议分类 按路由算法划分: 距离-矢量路由协议( 如RIP ) :定期广播整个路由信息,易形成路由环路,收敛慢 链路状态路由协议(如OSPF):收集网络拓扑信息,运行协议算法计算最佳路由根本解决路由环路问题,收敛快 按应用范围划分: 域间路由协议(EGP)和域内路由协议(IGP) 自治域系统(AS) 是一组处于相同技术管理的网络的集合。IGPs 在一个自治域系统 内运行。EGPs 连接不同的自治域系统。 2.RIP协议概述 RIP(Routing Information Protocol)路由信息协议

rip协议metric是什么意思

竭诚为您提供优质文档/双击可除rip协议metric是什么意思 篇一:Rip、eigRp、ospF计算各自metric时的接口方向 Rip、eigRp、ospF计算各自metric时的接口方向对Rip、eigRp 、ospF 计算metric时到底是出接口还是入接口的问题,一直迷迷糊糊的,老是不记得或者搞混淆!今天特地总结了一下,当做笔记: Rip 先说明一下这个图的含义,在这3台路由器上分别运行Rip、eigRp、ospF,在R1上观察记录这3个协议计算关于网络3.3.3.0/24的metric时的现象!(3.3.3.0/24在R3的环回口上) Rip以跳计数作为metric值,出一个接口算一跳,那么这个出接口是指的哪个方向的哪个接口? 准确的答案和描述应该是:目标网络到当前路由器方向的出接口。如图中,R3将网络

3.3.3.0/24通告给R2,出了接口s1/0时给3.3.3.0/24的metric加1,R2收到后,将其从s1/0通告给R1,metric 又加1,所以R1收到3.3.3.0/24的metric为2,即2跳。 eigRp eigRp计算metric看k值,k1=1,k2=0,k3=1,k4=0,k5=0,k1代表带宽,k3代表延迟;计算公式(10^7/最小带宽+出接口延迟累积/10)*256 这里的带宽和延迟均指的是图中R1去3.3.3.0/24方向的出接口的带宽和延迟,即R1的s1/1、R2的s1/1、R3的loopback0 最小带宽是这3个接口中的最小带宽,延迟是这3个接口的延迟累加; ospF ospF与eigRp类似,计算metric的方向是一样的。 ospF以接口cost为metric值,该接口指的是出接口,是当前路由器到目标网络方向的出接口; 在图中,即R1去3.3.3.0/24的红色箭头表示的方向上的出接口,R1的s1/1、R2的s1/1、R3的loopback0; cost计算公式:10^8/接口带宽 这里注意ospF的参考带宽,如果有链路的带宽>100m,需要修改参考带宽! 篇二:Rip协议的原理和配置

思科设备路由器rip协议配置

本次讲解路由器rip协议的配置: RIP是基于D-V算法的路由协议,使用跳数(Hop Count)来表示度量值(Metric)。跳数是一个数据报到达目标所必须经过的路由器的数目。 RIP认为跳数少的路径为最优路径。路由器收集所有可达目标网络的路径,从中选择去往同一个网络所用跳数最少的路径信息,生成路由表;然后把所能收集到的路由(路径)信息中的跳数加1后生成路由更新通告,发送给相邻路由器:最后依次逐渐扩散到全网。RIP每30s发送一次路由信息更新。 本例配置模型图 命令行: RA命令配置: Router>enable Router#conf t Enter configuration commands, one per line. End with CNTL/Z. Router(config)#hostname R1 R1(config)#router rip //使用rip协议 R1(config-router)#version 2 //使用RIPv2版本 R1(config-router)#network 192.1.1.0 255.255.255.0 //指定与该路由器直接相连的网络 R1(config-router)# network 202.1.1.5 //指定与该路由器直接相连的网络

R1(config-router)#no shutdown R1(config-router)#exit R1#show ip route //查看路由信息 Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2 E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, ia - IS-IS inter area * - candidate default, U - per-user static route, o - ODR P - periodic downloaded static route Gateway of last resort is not set //目前没有配置RB路由器,所以上述没有rip协议的配置生成 R1#conf t Enter configuration commands, one per line. End with CNTL/Z. R1(config)#int s1/0 R1(config-if)#ip address 202.1.1.5 255.255.255.252 //将模型图中的IP配置划分到对应端口R1(config-if)#no shutdown %LINK-5-CHANGED: Interface Serial1/0, changed state to down R1(config-if)#exit R1(config)#int f0/0 R1(config-if)#ip address 192.1.1.1 255.255.255.0 //将模型图中的IP配置划分到对应端口R1(config-if)#clock rate 64000 //配置时钟模式DCE端 R1(config-if)#bandwidth 64 R1(config-if)#no shutdown R1#wr Building configuration... [OK] RB命令配置: Router>enable Router#conf t Enter configuration commands, one per line. End with CNTL/Z. Router(config)#router rip //使用rip协议 Router(config-router)#version 2 //使用rip协议v2版本 Router(config-router)#network 192.168.2.0 //指定与该路由器直接相连的网络

RIP和OSPF协议工作原理分析

宽带通信网论文题目:RIP和OSPF协议工作原理分析 班级:4班 学号:105508 姓名:郭晋杰

RIP和OSPF协议工作原理分析 郭晋杰 105508 摘要:本文主要分析了内部网关协议中的路由信息协议(RIP)和开放式最短路径优先协议(OSPF)这两种网络协议的工作原理,并从各个方面分析了这两种路由选择协议的区别,总结出了其分别适用的网络。 关键词:路由信息协议;开放式最短路径优先协议;自治系统 引言 在如今的计算机网络中,当两台非直接连接的计算机需要经过几个网络通信时,通常就需要路由器。路由器提供一种方法来开辟通过一个网状联结的路径。那么路径是怎么建立的呢路由选择协议的任务是,为路由器提供他们建立通过网状网络最佳路径所需要的相互共享的路由信息。路由信息协议(RIP)和开放式最短路径优先协议(OSPF)作为基于TCP/IP的计算机网络中广泛应用的内部网关协议,深入理解其工作原理对研究计算机网络有着很好的促进作用。 1.路由信息协议 1.1路由信息协议简介 路由信息协议(Routing Information Protocol)是内部网关协议IGP 中最先得到广泛应用的协议。这个网络协议最初由加利弗尼亚大学的BerKeley 所提出,其目的在于通过物理层网络的广播信号实现路由信息的交换,从而提供本地网络的路由信息。RIP是一种分布式的基于距离向量的路由选择协议,是因特网的标准协议,其最大的优点就是简单。 1.2路由信息协议的工作原理 路由信息协议功能的实现是基于距离矢量的运算法则,这种运算法则在早期的网络运算中就被采用。简单来说,距离矢量的运算引入跳数值作为一个路由量度。每当路径中通过一个路由,路径中的跳数值就会加1。这就意味着跳数值越大,路径中经过的路由器就有多,路径也就越长。而路由信息协议就是通过

RIP协议实例

二、RIP协议配置 1.实验内容:在H3C路由器上配置RIP协议 2.实验目的:掌握RIP协议的配置 3.实验环境: 4.实验步骤 此时再测试网络 在静态路由实验基础上,删除静态路由的配置之后再启动RIP协议,其配置命令和配置信息以及路由表信息如下: [RTA]undo ip route-static 202.0.1.0 255.255.255.0 192.0.0.2 [RTA]rip [RTA-rip]network all [RTB]undo ip route-static 202.0.0.0 255.255.255.0 192.0.0.1 [RTB]rip [RTB-rip]network all 查看RTA的配置信息和路由表,路由表显示如下: [RTA)display ip routing-table RoutingTables: Destination/Mask Proto Pref Metric Nexthop Interface 127.0.0.0/8 Direct 0 0 127.0.0.1 LoopBackO 127.0.0.1/32 Direct 0 0 127.0.0.1 LoopBack0 192.0.0.1/0/24 Direct 0 0 192.0.0.2Serial0 192.0.0.1/32 Direct 0 0 127.0.0.1 LoopBack0 192.0.0.2/32 Direct 0 0 192.0.0.2Serial0 202.0.0.1/0/24 Direct 0 0 202.0.0.1 Ethernet0

202.0.0.1/32 Direct 0 0 127.0.0.1 LoopBack0 202.0.1.1/0/24 RIP 100 1 192.0.0.2Serial0 RTB路由器上的配置和RTA的配置相似。查看RTB的路由表信息如下: [RTB]display ip routing-table RoutingTables: Destination/Mask Proto Pref Metric Nexthop Interface 127.0.0.0/8 Direct 0 0 127.0.0.1 LoopBack0 127.0.0.1/32 Direct 0 0 127.0.0.1 LoopBack0 192.0.0.1/0/24 Direct 0 0 192.0.0.1 SerialO 192.0.0.1/32 Direct 0 0 192.0.0.1 SerialO 192.0.0.2/32 Direct 0 0 127.0.0.1 LoopBack0 202.0.0.1/0/24 RIP 100 1 192.0.0.1 Serial0 202.0.1.1/0/24 Direct 0 0 202.0.1.1 Ethernet0 202.0.1.1/32 Direct 0 0 127.0.0.1 LoopBack0 测试网络互通性,应该是全网互通的。如果不是,请检查配置。 现在我们可以看看RiP是怎样发现路由的,在系统视图下打开RiP协议调试开关,有如下信息在路由器之间传递,它们完成了路由的交换,并形成新的路由。 [RTA]info-center console //设置允许信息中心向Console口输出;[RTA]info-center console debugging //设置信息中心向Console口输出调试信息[RTA]debugging rip packet RIP:receive Response from l92.0.0.2 (Serial0) Packet:vers 1,cmd Response,length24 Dest 202.0.1.0,Metric 1 RIP:send from 202.0.0.1 t0 255.255.255.255(Ethemet0) Packet:vers 1,cmdResponse,length44 dest202.0.1·0,Metric2 dest 192.0.0.0,Metric 1 从上面的信息可以看到RIP协议版本为versionl,这是H3C路由器的默认版本。可以在接口视图下用rip version 2 multicast命令改变协议版本(注意:需要两端接口都执行该命令),再查看debug信息如下: [RTA]debugging rip packet RIP:sendfroml92.0.0.1t0224.0.0.9(Serial0) Packet:vers2,cmdResponse,length24 Dest 202.0.0.0 mask255.255.255.0 router 0.0.0.0 ,metric 1 RIP:receive Response from l92.0.0.2(Serial0) Packet:vers2,cmd Response,length24 Dest 202.0.1.0 mask 255.255.255.0,router0.0.0.0,metric 1 然后使用rip version 2 broadcast命令改变协议报文的发送方式为广播方式,查看debug 信息如下: [RTA]debugging rip packet RIP:send from l92.0.0.1t0255.255.255.255(Serial0) Packet:vers2,cmdResponse,length24 dest202.0.0.0 mask255.255.255.0,router0.0.0.0 ,metric 1

RIP协议理解

RIP协议的全称是路由信息协议(Routing Information Protocol),它是一种内部网关协 议(IGP),用于一个自治系统(AS)内的路由信息的传递。RIP协议是基于距离矢量算法( Distance Vector Algorithms)的,它使用“跳数”,即metric来衡量到达目标地址的路由 距离。 二、该协议的局限性 1、协议中规定,一条有效的路由信息的度量(metric)不能超过15,这就使得该协议不能 应用于很大型的网络,应该说正是由于设计者考虑到该协议只适合于小型网络所以才进行了 这一限制。对于metric为16的目标网络来说,即认为其不可到达。 2、该路由协议应用到实际中时,很容易出现“计数到无穷大”的现象,这使得路由收敛很 慢,在网络拓扑结构变化以后需要很长时间路由信息才能稳定下来。 3、该协议以跳数,即报文经过的路由器个数为衡量标准,并以此来选择路由,这一措施欠 合理性,因为没有考虑网络延时、可靠性、线路负荷等因素对传输质量和速度的影响。 三、RIP(版本1)报文的格式和特性 3.1、RIP(版本1)报文的格式 0 7 15 31 命令字(1字节)版本(1字节)必须为0(2字节) 地址类型标识符(2字节)必须为0(2字节) IP地址 必须为0 必须为0 Metric值(1—16) (最多可以有24个另外的路由,与前20字节具有相同的格式) “命令字”字段为1时表示RIP请求,为2时表示RIP应答。地址类型标志符在实际应用中总是 为2,即地址类型为IP地址。“IP地址”字段表明目的网络地址,“Metric”字段

达目的网络所需要的“跳数”。 3.2. RIP的特性 (1)路由信息更新特性: 路由器最初启动时只包含了其直连网络的路由信息,并且其直连网络的metric值为1,然后 它向周围的其他路由器发出完整路由表的RIP请求(该请求报文的“IP地址”字段为0.0.0.0 )。路由器根据接收到的RIP应答来更新其路由表,具体方法是添加新的路由表项,并将其 metric值加1。如果接收到与已有表项的目的地址相同的路由信息,则分下面三种情况分别 对待:第一种情况,已有表项的来源端口与新表项的来源端口相同,那么无条件根据最新的 路由信息更新其路由表;第二种情况,已有表项与新表项来源于不同的端口,那么比较它们 的metric值,将metric值较小的一个最为自己的路由表项;第三种情况,新旧表项的metric 值相等,普遍的处理方法是保留旧的表项。 路由器每30秒发送一次自己的路由表(以RIP应答的方式广播出去)。针对某一条路由信息 ,如果180秒以后都没有接收到新的关于它的路由信息,那么将其标记为失效,即metric值 标记为16。在另外的120秒以后,如果仍然没有更新信息,该条失效信息被删除。2)RIP版本1对RIP报文中“版本”字段的处理: 0:忽略该报文。 1:版本1报文,检查报文中“必须为0”的字段,若不符合规定,忽略该报文。 >1:不检查报文中“必须为0”的字段,仅处理RFC 1058中规定的有意义的字段。因此,运 行RIP版本1的机器能够接收处理RIP版本2的报文,但会丢失其中的RIP版本2新规定的那些信

RIP路由协议配置

. 2.1实验目的 通过本实验,学生可以掌握以下技能: 1.路由器基本配置使用方法; 2.配置RIP协议; 3.配置RIPv2协议; 4.查看上述配置项目的相关信息。 2.2实验任务 1.配置路由器端口的IP地址; 配置2.RIP协议; 配置3.RIP v2协议; 使得不同网段的4.PC机能够通信; 2.3实验设备 CISCO2600交换机三台,带网卡的PC机两台,控制电缆两条,串口连接线两条。 交叉线序网线两条以及Consoie电缆; 2.4实验环境 如图所示,用串口连接线把路由器router1的串口s0和router3的串口s0连接起来;把路由器router2的串口s0和router3的串口s1连接起来。PC1与路由器router1的FastEthernet0/1连接,PC2与路由器router2的FastEthernet0/11连接,电缆连接完成后。给所有设备加电,开始进行实验。 文档Word . 2.5实验报告要求 实验报告信息要求完整,包括学号、、班级、专业、课程名称、教师名称、实验目的、实验任务、实验环境、实验步骤及详细记录、实验过程中存在的问题及实验心得体会等内容。

2.6实验步骤通过PC1上的超级终端连接路由器router1,并为路由器命名 Router> enable Router# configure terminal Router(config)# Router(config)# hostname router1 router1(config)# 1.设置路由器router1的Ethernet0端口的IP地址 router1(config)# interface ethernet0 router1(config-if)# ip address 11.168.1.11 255.0.0.0 router1(config-if)# no shutdown 2.设置路由器router1的串口s0端口的IP地址 router1(config-if)# int s0 router1(config-if)# ip address 192.168.1.13 255.255.255.0 router1(config-if)# no shutdown 3.设置PC1的IP地址11.168.1.10,网关为11.168.1.11 文档Word .

rip协议有几个版本

竭诚为您提供优质文档/双击可除rip协议有几个版本 篇一:Rip协议和ospF协议的对比 rip协议是距离矢量路由选择协议,它选择路由的度量标准(metric)是跳数,最大跳数是15跳,如果大于15跳,它就会丢弃数据包。 ospf协议是链路状态路由选择协议,它选择路由的度量标准是带宽,延迟。 Rip的局限性在大型网络中使用所产生的问题: Rip的15跳限制,超过15跳的路由被认为不可达 Rip不能支持可变长子网掩码(Vlsm),导致ip地址分配的低效率 周期性广播整个路由表,在低速链路及广域网云中应用将产生很大问题 收敛速度慢于ospF,在大型网络中收敛时间需要几分钟Rip没有网络延迟和链路开销的概念,路由选路基于跳数。拥有较少跳数的路由总是被选为最佳路由即使较长的路径有低的延迟和开销 Rip没有区域的概念,不能在任意比特位进行路由汇总

一些增强的功能被引入Rip的新版本Ripv2中,Ripv2支持Vlsm,认证以及组播更新。但Ripv2的跳数限制以及慢收敛使它仍然不适用于大型网络 相比Rip而言,ospF更适合用于大型网络: 没有跳数的限制 支持可变长子网掩码(Vlsm) 使用组播发送链路状态更新,在链路状态变化时使用触发更新,提高了带宽的利用率收敛速度快 具有认证功能 ospF协议主要优点: 1、ospF是真正的loop-FRee(无路由自环)路由协议。源自其算法本身的优点。(链路状态及最短路径树算法) 2、ospF收敛速度快:能够在最短的时间内将路由变化传递到整个自治系统。 3、提出区域(area)划分的概念,将自治系统划分为不同区域后,通过区域之间的对路由信息的摘要,大大减少了需传递的路由信息数量。也使得路由信息不会随网络规模的扩大而急剧膨胀。 4、将协议自身的开销控制到最小。见下: 1)用于发现和维护邻居关系的是定期发送的是不含路由信息的hello报文,非常短小。包含路由信息的报文时是触发更新的机制。(有路由变化时才会发送)。但为了增强协

RIP协议详细讲解

RIP是现在仍然广泛使用的最老的一种距离矢量路由协议,RIP的版本有 V1&V2,其中V1是classful(有类),V2是classless(无类)。RIP的metric使用跳数来表示,1表示直连,16跳表示不可达。 RIP协议使用UDP端口520。RIP消息封装在UDP报文中,源端口号和目的端口号字段都设置为520。 RIP定义了两种消息类型:请求消息(request message)和响应消息(response message)。请求消息是用来向邻居路由器发送一个更新(update),响应消息是用来传送路由更新。 路由器启动后,平均每隔30s从每个启动RIP协议的接口不断的发送响应消息。除了被水平分割法则抑制的路由条目除外,响应消息包含了整个路由表。这个周期性的更新由更新计时器(update time)进行初始化,并且包含一个随机变量用来防止表的同步。结果,一个典型的RIP更新时间大约是25~35s。cisco 路由器缩短更新的15%(约4.5s),因此cisco路由器的RIP更新时间在25.5~30s之间变化。路由更新的目的地址是所有主机的广播地址 255.255.255.255。 RIP的计时器 更新(update)计时器----每个更新之间的间隔时间。该值可以配置,默认是30s。

失效(invalid)计时器-----经过该时间之后可疑路由变为失效。默认是180s。保持(hold-down)计时器---用来减小路由表中安装不正确路由的可能性的时间,默认180s。 清空(flash)计时器----在经过这段时间之后路由被移除路由表。默认是240s。 水平分割 水平分割是一种避免产生路由环路的技术。如果使用了水平分割,从某个接口学的路由就不会广播到该接口。 带毒性逆转的水平分割 从某个接口学到的路由会发送回该接口,只是这些路由已经具有毒性,也就是说,他们的度量值是16(不可达)。 RIPv1包头格式

rip协议的使用规则

网络实验五 实验项目名称:rip协议的使用规则 实验地点:A401 班级:计算机科学与技术2013级姓名:学号: 指导教师:成绩: 一、实验目的: 1. 学习动态路由协议rip的配置。 2.掌握rip协议的发送和接受规则。 3.解决rip不支持不连续子网的问题。 二、设计方案: Ip方案: R1:s0/0/0 192.168.1.1/30 lo1:10.1.1.1/16 R2:s0/0/0 192.168.1.2/30 lo1:10.2.1.1/16 三、实验设备: 1.路由器两台。 2.pc机一台。 3.连接线若干。

四、实验步骤 1:按照模拟图连接好实验设备路由器1 对R1进行配置。 En Conf t Int s0/0/0 Ip add 192.168.1.1 255.255.255.252 No shut Int l0 1 Ip add 10.1.1.1 255.255.0.0 Exit Router rip Ver 1 Net 192.168.1.0 Net 10.0.0.0 End Write 路由器2 En Conf t Int s0/0/0 Ip add 192.168.1.2 255.255.255.252 No shut Int l0 1 Ip add 10.2.1.1 255.255.0.0 Exit

Router rip Ver 1 Net 192.168.1.0 Net 10.0.0.0 End Write 2:用show ip route 命令查看R1与R2的路由表。 由路右表可以看出,没有通过rip协议学习到路由条目。

RIP协议

路由信息协议 概述 路由信息协议(RIP)协议是一种动态路由选择,它基于距离矢量算法(D-V),总是按最短的路由做出相同的选择。这种协议的路由器只关心自己周围的世界,只与自己相邻的路由器交换信息,范围限制在15跳(15度)之内,再远,它就不关心了。 RIP应用于OSI网络七层模型的网络层。 RIP(RoutinginformationProtocol)是应用较早、使用较普遍的内部网关协议(InteriorGatewayProtocol,简称IG P),适用于小型同类网络,是典型的距离向量(distance-vector)协议。文档见RFC1058、RFC1723。 RIP通过广播UDP报文来交换路由信息,每30秒发送一次路由信息更新。RIP提供跳跃计数(hopcount)作为尺度来衡量路由距离,跳跃计数是一个包到达目标所必须经过的路由器的数目。如果到相同目标有二个不等速或不同带宽的路由器,但跳跃计数相同,则RIP认为两个路由是等距离的。RIP最多支持的跳数为15,即在源和目的网间所要经过的最多路由器的数目为15,跳数16表示不可达。 2.举例 Router1:

router rip version 2 network 192.200.10.0 networ k 192.20.10.0!相关调试命令:show ip protocol show ip route在全局设置(#)模式下:1.启动RIP 路由router rip2.设置参与RIP路由的子网network子网地址3.允许在非广播型网络中进行RIP路由广播neighbor相邻路由器相邻端口的IP地址4.设置RIP的版本RIP路由协议有2个版本,在与其它厂商路由器相连时,注意版本要一致,缺省状态下,Cisco路由器接收RIP 版本1和2的路由信息,但只发送版本1的路由信息,设置RIP的版本vesion1或2。另外,还可以控制特定端口发送或接收特定版本的路由信息。1.只在特定端口发版本1或2的信息,在端口设置模式下rip send version1或22.同时发送版本1和2的信息ip rip send receive1or23.在特定端口接受版本1或2的路由信息ip rip receive1or24.同时接受版本1和2的路由信息ipripreceive1or2选择路由协议几点建议:1.在大型网络中,建议使用ospf,eigrp.2.如果网络中含有变长了网掩码(VISM)不能使用igrp,rip版本1,可以使用rip版本2,ospf,eigrp或静态路由。3.如果使用路由安全设置可以使用RIP版本1或OSPF。4.选用ospf,eigrp在系统稳定后所占带宽比RIP,IGRP少得多,IGRP比RIP所占带宽也少。5.综合使用动态路由,静态路由,缺省路由,

RIP_路由协议的配置

RIP 路由协议的配置 一、实验目的 1、复习路由器的三种模式及口令管理 2、练习RIP 动态路由协议的基本配置; 3、掌握了解RIP 路由协议原理 二、实验环境: Cisco Packet Tracer 三、关于RIP 的基础知识 RIP(Routing Information Protocol)是最常使用的内部网关协议(Interior Gateway Protocol)之一,是一种典型的基于D-V 算法的动态路由协议。 通过UDP(User Datagram Protocol)报文交换路由信息,使用跳数(Hop Count)来衡量到达目的地的距离(被称为路由权-Routing cost)。 由于在RIP 中大于或等于16 的跳数被定义为无穷大(即目的网络或主机不 可达),所以RIP 一般用于采用同类技术的中等规模的网络,如校园网及一个地区范围内的网络,RIP 并非为复杂、大型的网络而设计。 启动RIP,进入RIP 视图:router Rip 关闭RIP:no rip 在指定的网络上使能RIP network{ network-number| all } 在指定的网络上禁用RIP no network{ network-number| all 四:实验步骤: 绘制拓扑图如下所示(为每个路由器添加一个WIC-2T模块):

配置过程: Router1: Router>enable //进入特权模式 Router#conf ter //进入全局配置模式 Enter configuration commands, one per line. End with CNTL/Z. Router(config)#int f0/0 //配置Fa0/0 接口 Router(config-if)#ip add 1.1.1.2 255.255.255.0 Router(config-if)#no shutdown %LINK-5-CHANGED: Interface FastEthernet0/0, changed state to up Router(config-if)# %LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/0, changed state to up Router(config-if)#exit Router(config)#int s0/0/0 //配置串口 Router(config-if)#ip add 1.1.6.1 255.255.255.0 Router(config-if)#no shutdown %LINK-5-CHANGED: Interface Serial0/0/0, changed state to down Router(config-if)#exit Router(config)#int s0/0/1 //配置串口 Router(config-if)#ip add 1.1.2.1 255.255.255.0 Router(config-if)#no shutdown %LINK-5-CHANGED: Interface Serial0/0/1, changed state to down Router(config-if)#exit Router(config)#router rip //进入RIP 视图 Router(config-router)#network 1.0.0.0 //发布直连网络 Router(config-router)#exit Router(config)#exit Router# %SYS-5-CONFIG_I: Configured from console by console Router#show ip route //查看路由表 Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2 E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, ia - IS-IS inter area * - candidate default, U - per-user static route, o - ODR P - periodic downloaded static route Gateway of last resort is not set

RIP协议原理及配置实验报告

RIP协议原理及配置实验报告

通信网络实验 ——RIP协议原理及配置实验报告 班级: 学号: 姓名:

RIP协议原理及配置实验报告 一、实验目的 1.掌握动态路由协议的作用及分类 2.掌握距离矢量路由协议的简单工作原理 3.掌握RIP协议的基本特征 4.熟悉RIP的基本工作过程 二、实验原理 1.动态路由协议概述 路由协议是运行在路由器上的软件进程,与其他路由器上相同路由协议 之间交换路由信息,学习非直连网络的 路由信息,加入路由表。并且在网络拓 扑结构变化时自动调整,维护正确的路 由信息。 动态路由协议通过路由信息的交换生成 并维护转发引擎需要的路由 表。网络拓扑结构改变时自动更新路由 表,并负责决定数据传输最佳路径。动 态路由协议的优点是可以自动适应网 络状态的变化,自动维护路由信息而不 用网络管理员的参与。其缺为由于需要

相互交换路由信息,需要占用网络带 宽,并且要占用系统资源。另外安全性 也不如使用静态路由。在有冗余连接的 复杂网络环境中,适合采用动态路由协 议。目的网络是否可达取决于网络状态 动态路由协议分类 按路由算法划分: 距离-矢量路由协议( 如RIP ) :定期广播整个路由信息,易形成路由环 路,收敛慢 链路状态路由协议(如OSPF):收 集网络拓扑信息,运行协议算法计算最佳路由根本解决路由环路问题,收敛快 按应用范围划分: 域间路由协议(EGP)和域内路由协议(IGP) 自治域系统(AS) 是一组处于相同技术 管理的网络的集合。IGPs 在一个自治 域系统内运行。EGPs 连接不同的自治 域系统。 2.R IP协议概述

实验六动态路由协议rip初步配置

南昌大学实验报告 学生姓名:学号:专业班级: 实验类型:□验证■综合□设计□创新实验日期: 2017/12/14 实验成绩: 实验六动态路由协议RIP配置实训 一、实验目的 深入了解RIP协议的工作原理 学会配置RIP协议网络 掌握RIP协议配置错误排除 二、实验设备及条件 运行Windows 操作系统计算机一台 Cisco Packet Tracer模拟软件 Cisco 1841路由器两台,普通交换机三台,路由器串口线一根 RJ-45转DB-9反接线一根 超级终端应用程序 三、实验原理 RIP协议简介 路由信息协议(Routing Information Protocol,RIP)是一种内部网关协议(IGP),是一种动态路由选择协议,用于自治系统(AS)内的路由信息的传递。RIP协议基于距离矢量算法(Distance Vector Algorithms),使用“跳数”(即metric)来衡量到达目标地址的路由距离。这种协议的路由器只关心自己周围的世界,只与自己相邻的路由器交换信息,范围限制在15跳(15度)之内,再远,它就不关心了。RIP应用于OSI网络七层模型的网络层。 在默认情况下,RIP使用一种非常简单的度量制度:距离就是通往目的站点所需经过的链路数,取值为1~15,数值16表示无穷大。RIP进程使用UDP的520端口来发送和接收RIP 分组。RIP分组每隔30s以广播的形式发送一次,为了防止出现“广播风暴”,其后续的的

分组将做随机延时后发送。在RIP 中,如果一个路由在180s 内未被刷,则相应的距离就被设定成无穷大,并从路由表中删除该表项。 RIP 协议是最早的路由协议,现在仍然发挥“余热”,对于小型网络,RIP 就所占带宽而言开销小,易于配置、管理和实现。有两个版本。 RIPv1协议—有类路由协议 RIPv2协议—无类路由协议,需手工关闭路由自动汇总。 另外,为了兼容IP V6的应用,RIP 协议也发布了IP V6下的应用协议RIPng(Routing Information Protocol next generation) 有类与无类的区别在于: 有类路由在路由更新时不会将子网掩码一同发送出去,路由器收到更新后会假设子网掩码。子网掩码的假设基于IP 的分类,很明显,有类路由只会机械地支持A 、B 、C 这样的IP 地址。在IPv4地址日益枯竭的情况下,只支持有类路由明显不再适合。而无类路由支持可变长子网掩码(VISM ),在网络IP 的应用上可以缓解IP 利用的问题。 比如:有一个B 类的IP 地址,默认的子网掩码是16位长,如果再进一步划分子网,采用24位长的子网掩码,可划出4个子网来(当然不止4个)。将4个子网分配出去就提高了IP 的利用。如果是有类路由,则不能支持可变的子网掩码,只会机械地发送24位长的掩码,这样也就不能区分出子网。在运行RIP v1这样的网络中,如果划分了子网则路由更新时候会丢失子网,数据就不知道从哪里转发出去。如图 1所示。 A C D E 172.16.1.0/24 B 172.16.2.0/24 172.16.4.0/24 172.16.3.0/24 发发172.16.3.0/24 发发发发发发 C 发发发发发发发发发发发发发发16发发发发发发发 发172.16.0.0/16 图1 路由汇聚造成丢包示意图

RIP路由协议详解

RIP路由协议(Routing Information Protocols,路由信息协议)是使用最广泛的距离向量协议,它是由施乐(Xerox)在70年代开发的。当时,RIP是XNS (Xerox Network Service,施乐网络服务)协议簇的一部分。TCP/IP版本的RIP是施乐协议的改进版。RIP最大的特点是,无论实现原理还是配置方法,都非常简单。 度量方法RIP的度量是基于跳数(hops count)的,每经过一台路由器,路径的跳数加一。如此一来,跳数越多,路径就越长,RIP算法会优先选择跳数少的路径。RIP支持的最大跳数是15,跳数为16的网络被认为不可达。 路由更新RIP路由协议中路由的更新是通过定时广播实现的。缺省情况下,路由器每隔30秒向与它相连的网络广播自己的路由表,接到广播的路由器将收到的信息添加至自身的路由表中。每个路由器都如此广播,最终网络上所有的路由器都会得知全部的路由信息。正常情况下,每30秒路由器就可以收到一次路由信息确认,如果经过180秒,即6个更新周期,一个路由项都没有得到确认,路由器就认为它已失效了。如果经过240秒,即8个更新周期,路由项仍没有得到确认,它就被从路由表中删除。上面的30秒,180秒和240秒的延时都是由计时器控制的,它们分别是更新计时器(_updateTimer)、无效计时器(Invalid Timer)和刷新计时器(Flush Timer)。 路由循环距离向量类的算法容易产生路由循环,RIP路由协议是距离向量算法的一种,所以它也不例外。如果网络上有路由循环,信息就会循环传递,永远不能到达目的地。为了避免这个问题,RIP等距离向量算法实现了下面4个机制。 水平分割(split horizon)。水平分割保证路由器记住每一条路由信息的来源,并且不在收到这条信息的端口上再次发送它。这是保证不产生路由循环的最基本措施。 毒性逆转(poison reverse)。当一条路径信息变为无效之后,路由器并不立即将它从路由表中删除,而是用16,即不可达的度量值将它广播出去。这样虽然增加了路由表的大小,但对消除路由循环很有帮助,它可以立即清除相邻路由器之间的任何环路。 触发更新(trigger update)。当路由表发生变化时,更新报文立即广播给相邻的所有路由器,而不是等待30秒的更新周期。同样,当一个路由器刚启动RIP 路由协议时,它广播请求报文。收到此广播的相邻路由器立即应答一个更新报文,而不必等到下一个更新周期。这样,网络拓扑的变化会最快地在网络上传播开,减少了路由循环产生的可能性。 抑制计时(holddown timer)。一条路由信息无效之后,一段时间内这条路由都处于抑制状态,即在一定时间内不再接收关于同一目的地址的路由更新。如果,路由器从一个网段上得知一条路径失效,然后,立即在另一个网段上得知这个路由有效。这个有效的信息往往是不正确的,抑制计时避免了这个问题,而且,当一条链路频繁起停时,抑制计时减少了路由的浮动,增加了网络的稳定性。 即便采用了上面的4种方法,路由循环的问题也不能完全解决,只是得到了最大程度的减少。一旦路由循环真的出现,路由项的度量值就会出现计数到无穷大(_countto Infinity)的情况。这是因为路由信息被循环传递,每传过一个路由器,度量值就加1,一直加到16,路径就成为不可达的了。RIP路由协议选择16作为不可达的度量值是很巧妙的,它既足够的大,保证了多数网络能够正常运行,又足够小,使得计数到无穷大所花费的时间最短。 邻居有些网络是NBMA(Non-Broad_cast MultiAccess,非广播多路访问)

相关主题
文本预览
相关文档 最新文档