距离矢量路由算法原理

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

距离矢量路由算法原理实验

【实验目的】

1、要求实验者利用路由选择算法模拟软件提供的通信功能,模拟距离矢量路由选择算法的初始化、路由信息扩散过程和路由计算方法;

2、掌握距离矢量算法的路由信息扩散过程;

3、掌握距离矢量算法的路由计算方法。

【预备知识】

1、路由选择算法的特征、分类和最优化原则

2、路由表的内容、用途和用法

3、距离矢量算法的基本原理

【实验环境】

1、分组实验,每组4~10人。

2、拓扑:

虚线表示节点之间的逻辑关系,构成一个逻辑上的网状拓扑结构。

3、设备:小组中每人一台计算机。

4、实验软件:路由选择算法模拟软件(routing.exe )

【实验原理】

路由选择算法模拟软件根据给定的拓扑结构,为实验者提供基本的本地路由信息,并能发送和接收实验者所组织的路由信息,帮助实验者完成路由选择算法的路由信息扩散过程、路由计算过程和路由测试过程。

1、模拟软件的功能(图2-1)

● 在局域网内根据小组名称和成员数量建立一个模拟网络拓扑结构,每个成员模拟拓扑中的一台路由器,路由器上的本地路由信息由实验软件提供。 ● 向实验者指定的发送对象发送实验者自行组织的发送内容。

● 提示实验者有数据需要接收,并显示接收内容。

N

路由节点2 路由节点N-1 N = 4 ~ 10

●为实验者提供记录路由计算结果的窗口——路由表窗口。

●为实验者提供分组逐站转发方法来验证路由选择的结果。

图2-1 路由选择算法模拟软件主界面

2、模拟软件的使用方法

1)建立小组

通过建立小组,每个小组成员可以获得本节点的编号和本地直连链路信息。

a)4~10人一组,在实验前自由组合形成小组。小组人数尽量多些,每人使用一台计算机。启动实验软件后点击“建立小组”按钮。(图2-2)

图2-2 选择建立小组

b)在建立小组的窗口内填入小组名称和成员数量。同一小组成员必须填写同样的小组名称和成员数量才能正确建立小组。(图2-3)

图2-3 建立小组窗口图2-4 小组建立过程

c)点击“加入”按钮后,实验软件以广播形式将组名广播出去。同时,实验软件收集其他计算机发送的组名广播,将有相同组名的计算机加入到小组中,直到成员个数达到预定数量后“确定”按钮生效。(图2-4)

d)点击“确定”按钮后返回主界面,这时本地路由表里已经为本节点分配了节点号,并准备了一份本地路由表。(图2-5)

图2-5 本地路由表

实验者以本地路由表为基础,结合距离矢量路由算法原理,组织路由信息。

建立小组的过程是模拟网络路由器启动后,从各接口获得直连路由情况的过程,在实验里每个实验者都事先掌握各自的直连路由情况,他们将模拟网上路由器之间交换路由信息的过程,与邻居实验者交换路由信息,形成到达全网的路由表。所以虽然实验者之间通过局域网直接相连,但是实验者之间具有逻辑上的邻居关系,这个邻居关系是模拟网状拓扑结构的结果。

2)在实验软件主界面选择距离矢量路由算法,根据发送路由信息窗口的路由信息格式提示,组织并发送路由信息。

a)初始化路由表:选择距离矢量路由算法后,实验软件提示实验者初始化路由表,实验者在路由表最下一栏中按格式填写路由表项,然后点击添加按钮加入表项,逐步将本地路由表内容填入路由表。(图2-6,路由表中下一站项目中的“-”表示直连)

图2-6 初始化路由表

b)点击“路由选择过程”后,根据距离矢量路由算法,组织路由信息,发送给正确的路由器。(图2-7)

图2-7 发送路由信息

按照距离矢量算法要求,路由节点发布的路由信息是该节点当前已知的路由,即“通过本节点,可以到达哪些节点,相应的距离是多少”。因此在组织的路由信息中包括:发送者——通过哪个节点,目的——可以到达哪些节点,距离——发送者与目的间的距离。

距离矢量算法中的距离矢量路由信息仅扩散到邻居节点。

3)根据软件窗口状态栏的接收提示,接收路由信息。

a)当节点收到路由信息时,状态栏会提示实验者进行处理。(图2-8)

图2-8 新信息到达提示

b)实验者点击“处理路由信息”按钮,在路由信息接收窗口中会显示某个节点送到本节点的路由信息。(图2-9)

实验过程中,实验者可能会同时收到多个邻居节点送来的路由信息,每点击一次“处理路由信息”按钮,接收路由信息窗口中只显示一个邻居节点送来的路由信息。软件的状态栏中会一直显示“新路由信息到达”的提示,直到所有邻居节点送来的路由信息被处理完毕。

图2-9 接收路由信息图2-10 更新路由表

4)根据距离矢量算法和获得的路由信息更新路由表。(图2-10)

距离矢量算法中,路由节点将路由信息中的距离(发送者到达目的的距离)加上本节点到达发送者的距离,形成本节点到达目的的新距离;然后比较这个新距离与当前路由表中记录的到达该目的的距离,如果新距离较短,就按照距离矢量算法要求更新本节点路由表中到达该目的的路由表项。

5)根据距离矢量算法原理继续扩散路由信息,最终形成一张收敛的路由表。

6)向小组内的其它成员发送一份测试路由的报文,由实验者指定报文的源节点、目的节点、下一跳节点和数据。

a)点击实验软件主界面上的“测试路径”按钮,出现发送数据窗口。(图2-11)

图2-11 发送数据窗口

b)在目的域填入数据发送的目的地,data域填入发送的数据信息,转发域里根据路由表填入如果要将数据发送到目的地应通过的下一跳路由器标号。

点击“OK”按钮后,数据将被实验软件发送到指定的下一跳路由器,这以后

由各路由器根据各自的路由表将数据最终转发到目的节点。

7)节点收到来自其它节点的测试报文时,软件自动弹出一个“接收数据处理”

窗口,显示接收信息和操作提示,节点根据自己的路由表判定是否继续转发

该报文,以及将报文转发给哪个邻居路由器。(图2-12)

8)测试报文到达正确的目的节点后,会同时显示所经过路径上的节点序列,供实验者检查路径是否正确。(图2-13)

图2-12 接收数据转发处理图2-13 目的节点数据处理

【实验步骤】

1、建立实验小组。

2、按照距离矢量算法完成路由信息扩散和路由计算过程。

3、距离矢量算法收敛后,向路由表中列出的每个非直连节点发送路由测试数据,

完成路由测试过程。

4、汇总实验小组的实验记录信息,检查路由是否正确。如果有错,分析并发现错

误产生的原因。

5、将实验从步骤1开始多做几次,观察如果各节点发送信息和接收处理信息的过

程不一样,是否会影响路由表的正确形成。例如:在第一次实验时,节点每接收处理完一份路由信息后,就发布路由信息;而第二次实验时,节点将当前所有的路由信息处理完毕后,再发布路由信息。

*6(选作)小组讨论断掉拓扑中的一条链路,然后通过实验观察路由协议是如何适应这个变化的。

*7(选作)小组讨论如何在现有拓扑中产生无穷计数问题,然后通过实验展现无穷计数现象。

相关文档
最新文档