当前位置:文档之家› 距离矢量路由算法原理

距离矢量路由算法原理

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

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

【实验目的】

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

链路状态路由算法原理实验

【实验目的】

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

2、掌握链路状态算法的路由信息扩散过程;

3、掌握链路状态算法的路由计算方法。

【预备知识】

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

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

3、链路状态算法的基本原理

【实验环境】

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

2、拓扑:

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

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

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

【实验原理】

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

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

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

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

N

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

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

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

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

2、模拟软件的使用方法

1)建立小组

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

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

图3-2 选择建立小组

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

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

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

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

图3-5 本地路由表

实验者以本地路由表为基础,结合链路状态路由算法原理,组织路由信息。

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

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

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

图3-6 初始化路由表

b)根据链路状态路由算法,组织路由信息,发送给正确的路由器。(图3-7)

图3-7 发送路由信息

按照链路算法要求,路由节点宣告的路由信息是该节点与邻居节点之间的链路状态。其中,每条链路使用二元组(通告节点,对端节点)进行全网唯一标识。每条链路的质量就是该链路的度量值(Metric)。宣告的路由信息的结点为路由信息分配一个“信息序号”,该序号在节点每次宣告新路由信息时加1(注意,不是转发路由信息时)。其它路由节点根据收到的路由信息中的信息对(宣告节点+信息序号),来控制路由信息的扩散过程,如丢弃已经转发过的路由信息。

链路状态算法中的链路状态路由信息需要扩散到全网内的所有节点,信息的宣告者只能先将信息发送到邻居节点,由邻居节点进一步转发到它们的邻居,如此不断扩散,直到信息扩散到全网的所有节点。

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

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

图3-8 新信息到达提示

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

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

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

4)根据链路状态算法和获得的路由信息更新路由表。(图3-10)

链路状态算法中,路由节点比较路由信息中的信息序号与当前记录的该发送者的序号(即与该节点曾经宣告过的信息比较):如果前者小于等于后者,则认为该路由信息过时或重复而丢弃;否则更新链路状态信息库,“绘制”出新的网络拓扑图,并计算到各节点的最短路由,更新本节点的路由表。

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

链路状态算法中,路由节点如果判断收到的路由信息是新的,则将该路由信息进一步扩散给各邻居结点。

注意,节点不再将路由信息扩散回发送该信息的邻居,这可通过接收窗中提示的路由信息发送者来实现。

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

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

图3-11 发送数据窗口

b)在目的域填入数据发送的目的地,data域填入发送的数据信息,转发域里

根据路由表填入如果要将数据发送到目的地应通过的下一跳路由器标号。

点击“OK”按钮后,数据将被实验软件发送到指定的下一跳路由器,这以后由各路由器根据各自的路由表将数据最终转发到目的节点。

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

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

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

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

图3-12 接收数据处理图3-13 目的节点数据处理

【实验步骤】

1、建立实验小组。

2、按照链路状态算法完成路由信息扩散和路由计算过程。

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

完成路由测试过程。

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

误产生的原因。

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

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

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

计算机网络原理 距离矢量路由

计算机网络原理距离矢量路由 距离矢量路由选择(Distance Vector Routing)算法是通过每个路由器维护一张表(即一个矢量)来实现的,该表中列出了到达每一个目标地的可知的最短路径及所经过的线路,这些信息通过相邻路由器间交换信息来更新完成。我们称这张表为路由表,表中按进入子网的节点索引,每个表项包含两个部分,到达目的地最优路径所使用的出线及一个估计的距离或时间,所使用的度量可能是站段数,时间延迟,沿着路径的排队报数或其他。 距离矢量路由选择算法有时候也称为分布式Bellman-Ford路由选择算法和Ford-Fulkerson算法,它们都是根据其开发者的名字来命名的(Bellman,1957;Ford and Fulkerson,1962)。它最初用于ARPANET路由选择算法,还用于Internet和早期版本的DECnet 和Novell的IPX中,其名字为RIP。AppleTalk t Cisco路由器使用了改进型的距离矢量协议。 在距离矢量路由选择算法中,每个路由器维护了一张子网中每一个以其他路由器为索引的路由选择表,并且每个路由器对应一个表项。该表项包含两部分:为了到达该目标路由器而首选使用的输出线路,以及到达该目标路由器的时间估计值或者距离估计值。所使用的度量可能是站点数,或者是以毫秒计算的延迟,或者是沿着该路径排队的分组数目,或者其他类似的值。 假设路由器知道它到每个相邻路由器的“距离”。如果所用的度量为站点,那么该距离就为一个站点。如果所用的度量为队列长度,那么路由器只需检查每一个队列即可。如果度量值为延迟,则路由器可以直接发送一个特殊的“响应”(ECHO)分组来测出延时,接收者只对它加上时间标记后就尽快送回。

距离矢量和链路状态区别

距离矢量和链路状态区别 距离矢量(DV)是“传说的路由”,A发路由信息给B,B加上自己的度量值又发给C,路由表里的条目是听来的,虽说“兼听则明,偏信则暗”,但是选出最优路径的同时会引发环路问题,当然,DV协议也使用水平分割,毒性逆转,触发更新等特性来避免,无奈的是,这种问题对于竞争对手LS而言是天生免疫的。 链路状态(LS)是“传信的路由”,A将信息放在一封信里发给B,B对其不做任何改变,拷贝下来,并将自己的信息放在另一封信里,两封信一起给C,这样,信息没有任何改变和丢失,最后所有路由器都收到相同的一堆信,这一堆信就是LSDB。然后,每个路由器运用相同的SPF算法,以自己为根,计算出SPF Tree(即到达目的地的各个方案),选出最佳路径,放入转发数据库中(即路由表)。 链路状态协议有三样看家本领:LSDB,SPF算法,SPF Tree。还有三张表:邻居表,拓扑表,路由表,但这三张表并不是DV和LS的根本区别,EIGRP作为高级的距离矢量路由协议同样有这三张表,关键点在于表的内容和传递信息的过程。 DV的拓扑表事实上是邻居通告的路由条目的集合,依据算法从中选出最佳的放进路由表,它并不完全了解网络拓扑;而LS的拓扑表是真正意义上的网络拓扑,路由器对网络信息完全了解,所以可以独立的做出决策,确定最佳路由。举例来说,如果我是DV的思维,我从华师去火车东站,通过询问知道,我可以在走到师大暨大车站坐515路车,也可以走到坐177路车,这样问下来有几种方案,我再选一个最优的,以这样的方式我就知道广州市内的一些地方该怎么去;而如果我是LS的思维,我会先去四下打听,搜集信息然后汇总成一张广州市区的地图,然后依据这张地图自己决定如何去火车东站以及其它地方。 路由过滤器对DV和LS的影响也是不同的。运行DV的路由器基于自身的路由表来通告路由信息,其结果是路由过滤器将会对通告产生影响。 运行LS的路由器是基于自身的链路状态数据库来计算出自己的路由,路由过滤器对两路状态的通告和链路状态数据库没有影响,所以只会影响本路由器的路由表的安装,正是因为这种特性,路由过滤器主要被用在进入链路状态域的重新分配点上,即在ASBR执行重发布时,控制那些要进入或离开的路由. ------------------------------------------------------------------- 所以我们总结一下链路状态选择协议的优缺点如下: 链路状态路由选择的优点: 1.收敛速度快:触发更新在每个路由器上进行 2.没有路由环路:才用SPF算法 3.分等级设计网络和路由,更合理的利用网络资源 4.和距离矢量路由协议相比,链路状态路由协议的

3.3 距离矢量路由协议-RIP

RIP是一种比较简单的内部网关协议。RIP使用了基于距离矢量的贝尔曼-福特算法(Bellman-Ford)来计算到达目的网络的最佳路径。 最初的RIP协议开发时间较早,所以在带宽、配置和管理方面要求也较低,因此,RIP主要适合于规模较小的网络中。 RIP协议中定义的相关参数也比较少。例如,它不支持VLSM和CIDR, 也不支持认证功能。

路由器启动时,路由表中只会包含直连路由。运行RIP之后,路由器会发送Request报文,用来请求邻居路由器的RIP路由。运行RIP的邻居路由器收到该Request报文后,会根据自己的路由表,生成Response报文进行回复。路由器在收到Response报文后,会将相应的路由添加到自己的路由表中。 RIP网络稳定以后,每个路由器会周期性地向邻居路由器通告自己的整张路由表中的路由信息,默认周期为30秒。邻居路由器根据收到的路由 信息刷新自己的路由表。

RIP使用跳数作为度量值来衡量到达目的网络的距离。在RIP中,路由器到与它直接相连网络的跳数为0,每经过一个路由器后跳数加1。为限制收敛时间,RIP规定跳数的取值范围为0~15之间的整数,大于15的跳数被定义为无穷大,即目的网络或主机不可达。 路由器从某一邻居路由器收到路由更新报文时,将根据以下原则更新本路由器的RIP路由表: 1.对于本路由表中已有的路由项,当该路由项的下一跳是该邻居路由 器时,不论度量值将增大或是减少,都更新该路由项(度量值相同时只将其老化定时器清零。路由表中的每一路由项都对应了一个老化定时器,当路由项在180秒内没有任何更新时,定时器超时,该路由项的度量值变为不可达)。 2.当该路由项的下一跳不是该邻居路由器时,如果度量值将减少,则 更新该路由项。 3.对于本路由表中不存在的路由项,如果度量值小于16,则在路由表 中增加该路由项。 某路由项的度量值变为不可达后,该路由会在Response报文中发布四次(120秒),然后从路由表中清除。 在本示例中,路由器RTA通过两个接口学习路由信息,每条路由信息都有相应的度量值,到达目的网络的最佳路由就是通过这些度量值计算出来的。

向量法求空间距离教案

A B C D O S x y z 图2 A B C D α n a b 龙文学校——您值得信赖的专业化个性化辅导学校 龙文学校个性化辅导教案提纲 教师:_______ 学生:_______ 年级:______ 授课时间:_____年___月___日_____——_____段 一、授课目的与考点分析:向量法求空间距离 能用向量方法解决空间距离问题,了解向量方法在研究集合问题中的应用. 二、授课内容及过程: 1、点到平面的距离 方法:已知AB 为平面α的一条斜线段,n 为平面α的法向量, 则A 到平面α的距离d =AB n n ? . 2、两条异面直线距离: 方法:a 、b 为异面直线,a 、b 间的距离为:AB n d n ?= . 其中n 与a 、b 均垂直,A 、B 分别为两异面直线上的任意两点 题型1:异面直线间的距离 例1、如图2,正四棱锥S ABCD -的高2SO =,底边长2AB =。求异面直线BD 和SC 之间的距离? 题型2:点面距离 如图,在长方体1111ABCD A BC D -,中,11,2AD AA AB ===,点E 在棱AD 上移动.(1)证明:11D E A D ⊥; (2)当E 为AB 的中点时,求点E 到面1ACD 的距离; (3)AE 等于何值时,二面角1D EC D --的大小为4 π. 解:以D 为坐标原点,直线1,,DA DC DD 分别为,,x y z 轴, 建立空间直角坐标系,设AE x =,则11(1,0,1),(0,0,1),(1,,0),(1,0,0),(0,2,0)A D E x A C (1).,0)1,,1(),1,0,1 (,1111E D DA x E D DA ⊥=-=所以因为

距离矢量协议和链路状态协议的区别

距离矢量协议和链路状态协议的区别 一.什么是距离向量路由协议以及什么是链接状态路由协议? (1.)这类协议使用贝尔曼-福特算法(Bellman-Ford)计算路径。在距离-矢量路由协议中,每个路由器并不了解整个网络的拓扑信息。它们只是向其它路由器通告自己的距离、也从其它路由器那里收到类似的通告。(如果在90秒内没有收到相邻站点发送的路由选择表更新,它才认为相邻站点不可达。每隔30秒,距离向量路由协议就要向相邻站点发送整个路由选择表,使相邻站点的路由选择表得到更新。这样,它就能从别的站点(直接相连的或其他方式连接的)收集一个网络的列表,以便进行路由选择。距离向量路由协议使用跳数作为度量值,来计算到达目的地要经过的路由器数。) 每个路由器都通过这种路由通告来传播它的路由表。在之后的通告周期中,各路由器仅通告其路由表的变更。该过程持续至所有路由器的路由表都收敛至一稳定状态为止。 这类协议具有收敛缓慢的缺点,然而,它们通常容易处理且非常适合小型网络。距离-矢量路由协议的一些例子包括:路由信息协议(RIP)内部网关路由协议(IGRP) (2.)链接状态路由协议更适合大型网络,但由于它的复杂性,使得路由器需要更多的C P U 资源。 在链路状态路由协议中,每个节点都知晓整个网络的拓扑信息。各节点使用自己了解的网络拓扑情况来各自独立地对网络中每个可能的目的地址计算出其最佳的转发地址(下一跳)。所有最佳转发地址汇集到一起构成该节点的完整路由表。 与距离-矢量路由协议使用的那种每个节点与其相邻节点分享自己的路由表的工作方式不同,链路状态路由协议的工作方式是节点间仅传播用于构造网络连通图所需的信息。最初创建这类协议就是为了解决距离-矢量路由协议收敛缓慢的缺点,然而,为此链路状态路由协议会消耗大量的内存与处理器能力。 (它能够在更短的时间内发现已经断了的链路或新连接的路由器,使得协议的会聚时间比距离向量路由协议更短。通常,在1 0秒钟之内没有收到邻站的H E L LO报文,它就认为邻站已不可达。一个链接状态路由器向它的邻站发送更新报文,通知它所知道的所有链路。它确定最优路径的度量值是一个数值代价,这个代价的值一般由链路的带宽决定。具有最小代价的链路被认为是最优的。在最短路径优先算法中,最大可能代价的值几乎可以是无限的。) 如果网络没有发生任何变化,路由器只要周期性地将没有更新的路由选择表进行刷新就可以了(周期的长短可以从3 0分钟到2个小时)。 链路状态路由协议的例子有:开放式最短路径优先协议(OSPF),中间系统到中间系统路由交换协议(IS-IS) 二.具体理解链路状态和距离矢量路由协议 距离矢量(DV)是“传说的路由”,A发路由信息给B,B加上自己的度量值又发给C,路由表里的条目是听来的,虽说“兼听则明,偏信则暗”,但是选出最优路径的同时会引发环路问题,当然,DV协议也使用水平分割,毒性逆转,触发更新等特性来避免,无奈的是,

距离向量算法更新路由表3

计算机网络实习报告 论文题目距离向量算法更新路由表 学生专业班级通信07级2班 学生姓名(学号) 指导教师 完成时间 2010年05月22日 实习(设计)地点信息楼139(112)机房 2010 年 05 月 22 日

距离向量算法更新路由表 一.实验目的 1.认识并掌握路由器结构组成及路由建立与更新的原理 2.理解、掌握和利用距离向量算法的应用。 3. 能够用距离向量算法建立一个路由表并根据相邻路由器发来的数据进行更新。 5.所实现的路由器模拟Internet上的IP路由器,它能确定网络的最短路由,并在其上传输分组 二.原理概述 距离向量路由算法被距离向量协议作为一个算法,它告诉在网络中每个节点的最远和最近距离。在距离表中的这个信息是根据临近接点信息的改变而时时更新的。表中数据的量和在网络中的所有的接点是等同的。每个数据包括传送数据包到每个在网上的目的地的路径和距离/或时间在那个路径上来传输。 这个表中的列代表直接和它相连的“邻居”路由器相连,行代表在网络中的所有目的地。在距离向量路由算法中,相邻路由器之间周期性(一般为3分钟)地相互交换各自的路由表。当网络拓扑结构发生变化时,路由器之间也将及时地相互通知有关变更信息。它是一种动态路由选择算法。每个路由器都定期与其相邻的所有路由器交换路由表,据此更新它们自己的路由表。 所有路由器只与其相邻路由器交换信息,在发来为RIP报文情况下更新其路由表的具体步骤为: 1.对地址为X的相邻路由器发来的RIP报文,先修改报文中的所有项目,把“下跳”字段中地址均改为X,把所有“距离”字段的值加1.每一个项目都有三项数据,即:到目的网络N,距离是d,下一条路由器是X 2.对修改后的RIP报文中每个项目,进行以下步骤: 若原来路由表中没有目的网络N,则把该项目添加到路由表中。 否则若吓一跳地址是X,把收到的项目替还原路由表中的项目 否则若收到的项目中的距离d小于路由表中的距离,则进行更新。 否则什么也不做。 3.若三分钟还没有收到相邻路由器的更新路由表,则把此相邻路由器记为不可达的路由器,即把距离置为16.(本实验将其定义为6) 4.返回。 三.设计方案 路由表的建立和更新 假设建立七个路由器,其中三个A,B和C。路由器A的两个网络接口E0和S0 分别连接在 10.1.0.0和10.2.0.0网段上;路由器B的两个网络接口S0和S1 分别连接在 10.2.0.0和10.3.0.0网段上;路由器C的两个网络接口S0和E0 分别连接在 10.3.0.0和10.4.0.0网段上; 如上面各路由表的前两行所示,通过路由表的网络接口到与之直接相连的网 络的网络连接,其向量距离设置为0。这即是最初的路由表。

距离矢量路由算法原理

距离矢量路由算法原理实验 【实验目的】 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 小组建立过程

向量法求空间点到平面的距离教案

学习必备 欢迎下载 向量法求空间点到面距离(教案) 新课导入: 我们在路上行走时遇到障碍物一般会想到将障碍物挪开,那还有别的方法吗? 对!绕过去。在生活中我们都知道转弯,那么在学习上我们不妨也让思维转个弯,绕过难点 用另一种方法解决。 我们知道要想求空间一点到一个面的距离,就必须要先找到这个距离,而找这个距离恰恰是 一个比较难解决的问题,我们今天就让思维转个弯,用向量法解决这个难题。 一、复习引入: 1、 空间中如何求点到面距离? 方法1、直接做或找距离; 方法2、;等体积 方法3、空间向量。 2、向量数量积公式 a · b =a b cos θ(θ为a 与b 的夹角) 二、向量法求点到平面的距离 教材分析 重点: 点面距离的距离公式应用及解决问题的步骤 难点: 找到所需的点坐标跟面的法向量 教学目的 1. 能借助平面的法向量求点到面、线到面、面到面、异面直线间的距离。 2. 能将求线面距离、面面距离问题转化为求点到面的距离问题。 3. 加强坐标运算能力的培养,提高坐标运算的速度和准确性。

学习必备欢迎下载

学习必备 欢迎下载 若AB 是平面α的任一条斜线段,则在BOA Rt ? ABO COS ∠? ? 如果令平面的法向量为n ,考虑到法向量的方向,可以得到点B 到平面的距离为 BO 因此要求一个点到平面的距离,可以分为以下三步:(1)找出从该点出发的平面的任一 条斜线段对应的向量(2)求出该平面的一个法向量(3)求出法向量与斜线段对应的向量的 数量积的绝对值再除以法向量的模 思考、已知不共线的三点坐标,如何求经过这三点的平面的一个法向量? 例1、在空间直角坐标系中,已知(3,0,0),(0,4,0)A B ,(0,0,2)C ,试求平面ABC 的一个法向量. 解:设平面ABC 的一个法向量为(,,)n x y z = 则n AB n AC ⊥⊥,.∵(3,4,0)AB =-,(3,0,2)AC =- ∴(,,)(3,4,0)0(,,)(3,0,2)0x y z x y z ?-=???-=?即340320x y x z -+=??-+=? ∴3432y x z x ?=????=?? 取4x =,则(4,3,6)n = ∴(4,3,6)n =是平面ABC 的一个法向量. 例2、如图,已知正方形ABCD 的边长为4,E 、F 分别是AB 、AD 的中点,GC ⊥平面ABCD ,且GC =2,求点B 到平面EFG 的距离. 解:如图,建立空间直角坐标系C -xyz . 由题设C(0,0,0),A(4,4,0),B(0,4,0), D(4,0,0),E(2,4,0), F(4,2,0),G(0,0,2). (2,2,0),(2,4,2),B (2,0,0)EF EG E =-=--=设平面EFG 的一个法向量 为(,,)n x y z = 2202420 11(,,1)33 n EF n EG x y x y n ⊥⊥-=?∴?--+=?∴=,

用向量法求空间距离

用向量法求空间距离 湖南省冷水江市七中(417500) 李继龙 在高中立体几何中引入空间向量,为解决立体几何问题提供了一种新的解题方法,有时也能降低解题难度.下面通过例题介绍用向量法求空间距离的方法. 一、 求两点之间的距离 用向量求两点间的距离,可以先求出以这两点为始点和终点的向量,然后求出该向量的模,则模就是两点之间的距离. 例1 已知正方体ABCD-A 1B 1C 1D 1的棱长为1,点P 是AD 1的中点,Q 是BD 上一点, DQ=4 1 DB ,求P 、Q 两点间的距离. 解 如图1,以1DD DC DA 、、所在的直线分别为x 轴、y 轴和z 轴建立空间直角坐标系D-xyz ,则 0)4 141(Q )21021(,,、,,P , 所以)21 -4141(-,,=. 46= ,即P 、Q 两点的距离为4 6. 二、 求点到直线之间的距离 已知如图2,P 为直线a 外一点,Q 为a 上任意一点,PO ⊥a 于点O ,所以点P 到直线a 的距离为|PO|=d . 则有>= < 故>

例2 在长方体OABC-O 1A 1B 1C 1中,OA=2,AB=3,AA 1=2.求点O 1到直线AC 的距离. 解 建立如图3所示的空间直角坐标系,连结AO 1,则A(2,0,0),C(0,3,0),O 1(0,0,2). 所以0)32-(AC 2)02-(AO 1,,,,,==. 故 d = 13 286 213168=- = 所以点O 1到直线AC 的距离为13 286 2. 三、 求点到平面的距离 如图4设A 是平面α外一点,AB 是平面α的一条斜线,交平面α于点B ,而是平面α的法向量,那么向量 在方向上的射影长就是点A 到平面α的距离d ,所以 d ==>

向量法求空间点到平面的距离教案

向量法求空间点到面距离(教案) 新课导入: 我们在路上行走时遇到障碍物一般会想到将障碍物挪开,那还有别的方法吗? 对!绕过去。在生活中我们都知道转弯,那么在学习上我们不妨也让思维转个弯,绕过难点 用另一种方法解决。 我们知道要想求空间一点到一个面的距离,就必须要先找到这个距离,而找这个距离恰恰是 一个比较难解决的问题,我们今天就让思维转个弯,用向量法解决这个难题。 一、复习引入: 1、 空间中如何求点到面距离? 方法1、直接做或找距离; 方法2、;等体积 方法3、空间向量。 2、向量数量积公式 a · b =a b cos θ(θ为a 与b 的夹角) 二、向量法求点到平面的距离 剖析:如图, BO 平面 ,垂足为O ,则点B 到平面 的距离是线段BO 的长度。 教材分析 重点: 点面距离的距离公式应用及解决问题的步骤 难点: 找到所需的点坐标跟面的法向量 教学目的 1. 能借助平面的法向量求点到面、线到面、面到面、异面直线间的距离。 2. 能将求线面距离、面面距离问题转化为求点到面的距离问题。 3. 加强坐标运算能力的培养,提高坐标运算的速度和准确性。

若AB 是平面 的任一条斜线段,则在BOA Rt ABO COS ? 如果令平面的法向量为n ,考虑到法向量的方向,可以得到点B 到平面的距离为 BO 因此要求一个点到平面的距离,可以分为以下三步:(1)找出从该点出发的平面的任一 条斜线段对应的向量(2)求出该平面的一个法向量(3)求出法向量与斜线段对应的向量的 数量积的绝对值再除以法向量的模 思考、已知不共线的三点坐标,如何求经过这三点的平面的一个法向量? 例1、在空间直角坐标系中,已知(3,0,0),(0,4,0)A B ,(0,0,2)C ,试求平面ABC 的一个法向量. 解:设平面ABC 的一个法向量为(,,)n x y z r 则n AB n AC r u u u r r u u u r ,.∵(3,4,0)AB u u u r ,(3,0,2)AC u u u r ∴(,,)(3,4,0)0(,,)(3,0,2)0x y z x y z 即340320x y x z ∴3432y x z x 取4x ,则(4,3,6)n r ∴(4,3,6)n r 是平面ABC 的一个法向量. 例2、如图,已知正方形ABCD 的边长为4,E 、F 分别是AB 、AD 的中点,GC ⊥平面ABCD ,且GC =2,求点B 到平面EFG 的距离. 解:如图,建立空间直角坐标系C -xyz . 由题设C(0,0,0),A(4,4,0),B(0,4,0), D(4,0,0),E(2,4,0), F(4,2,0),G(0,0,2). (2,2,0),(2,4,2),B (2,0,0)EF EG E u u u r u u u r u u u r 设平面EFG 的一个法向量 为(,,)n x y z r 2202420 11(,,1)33 n EF n EG x y x y n r u u u r r u u u r r ,

距离矢量路由协议及路由环路

第七讲:距离矢量路由协议及路由环路 回顾昨天:提问:1、距离矢量路由协议包括哪几种?2、路由器是如何确定最佳路由的说出步骤? 今天内容:距离矢量路由协议及确保路由表条目的的正确的六种方法,及六种方法的结合使用。 一、距离矢量路由协议学习路由的方法首先明确一点,该协议并不能学到整个网络的拓扑。只能靠学习邻居路由表内容来学习路由。但每个路由表中只有最佳路径(也就是路由)。也就是说只有目的地方向(路由器接口)和距离,于是被叫距离矢量。 举例:高速路上开车,没有地图,出错,只能打听。而打听的人也不知道还要向另外的人打听(好比路由器问邻居路由器,邻居也不知道于是就要再问下一个邻居,这样收敛的速度可想而知) 1、距离矢量路由协议是通过传递路由更新 包来学习路由的(见图10-1),在图10-2到10-4是说明了RIP路由协议是怎样来学习路由的。在路由协议刚刚运行的时

候,路由器没有开始相互发送UPDATE 包,于是路由表里只有自己直连的网段,管理距离是0。如图10-2,路由器学到 了自己直连的网段后便开始向邻居路由 器发送更新包了,此包里包含我们发布 的路由。(一台路由器所直接连接的网段 必须发布在路由协议里才能够被放到 UPDATE包里传送)这样路由器就学到 了其他路由器的路由了见图10-3。路由 器学到了邻居的路由再打包向邻居发, 这样所有路由器会学到所有的路由条 目。如图10-4(注意此图的RIP为RIPV2,找同学说为什么) #########注意:从以上可以看出距离矢量路由协议就是靠和邻居之间周期性的交换路由表来一步一步学到远端路由的####### 2、路由更新包的格式决定了路由协议是有 类还是无类。 实际上有类的路由协议出现的比较早,当时没有出现子网。路由学到的都是正规的ABC 类网段。RIP V1等距离矢量路由协议的更

用向量法求空间距离

A B C D m n 1 图向量法求空间距离 向量融形、数于一体,具有几何形式和代数形式的“双重身份”,向量成为中学数学知识的一个交汇点,空间向量将空间元素的位置关系转化为数量关系,将过去的形式逻辑证明转化为数值计算,化繁难为简易,化复杂为简单,成为解决立体几何问题的重要工具。 1.异面直线n m 、的距离 分别在直线n m 、上取定向量,,b a 求与向量b a 、都垂直的向量,分别在 n m 、上各取一个定点B A 、,则异面直线n m 、的距离 d 等于在上的射影长,即| |n d = 证明:如图1,设CD 为公垂线段,取b a ==, | |||)(?=?∴?++=?∴++= | |||||n n AB d ?= =∴ 2平面外一点P 到平面α的距离 如图2,先求出平面α的法向量,在平面内任取一定 点A ,则点p 到平面α的距离d 等于在上的射影长,即| |n d = 因为空间中任何向量均可由不共面的三个基向量来线性表示,所以在解题时往往根据问题条件首先选择适当的基向量,把相关线段根据向量的加法、数乘运算法则与基向量联系起来。再通过向量的代数运算,达到计算或证明的目的。一般情况下,选择共点且不共面的三个已知向量作为基向量。 [例 1] 如图3,已知正三棱柱111C B A ABC -的侧棱长为2, 底面边长为1,M 是BC 的中点,当1AB MN ⊥时,求点1A 到平面AMN 的距离。 图2 A B C M N 1 A 1 B 1 C 图3

几何体中容易找到共点不共面且互相垂直的三个向量,于是有如下解法: 解:当1AB MN ⊥时,如图4 , 、)0,0,0(A )81 ,1,0()0,43,43()2,21,23(1N M B 、、、)2,0,0(1A ,则 )2,0,0(),0,4 3,43( ),8 1 ,41,43(1==- =AA AM MN , 设向量),,(z y x n =与平面AMN 垂直,则有 )0()1,1,3(8 ),81,83( 8183 0434********>-=-=∴?????? ?-==?=???????=+=++-??????⊥⊥z z z z z n z y z x y x z y x AM n MN n 取)1,1,3(0-=n 向量1AA 在0n 上的射影长即为1A 到平面AMN 的距离,设为d ,于是 5 5 21)1()3(|)1,1,3()2,0,0(||||,cos |||2 2201011011= +-+-?= =>

第 4 章 距离矢量路由协议

第4章距离矢量路由协议 1.下面哪4段话对距离矢量路由协议的描述是正确的?A、C、D、F A.跳数可以用作路径选择 B.它们的扩展性很好 C.路由更新是周期广播的 D.EIGRP可以支持非等价均衡负载 E.RIPv1使用组播更新它的路由 F.RIP发送全部的路由表到直连的邻居(除了受水平分割影响的路由) 2.什么条件会导致距离矢量路由协议发送路由表更新?B、C、D A.当抑制计时器超时 B.当网络拓扑发生了改变 C.当更新周期到时 D.当从其他路由器收到触发更新 E.当收到一个目的地为末知网络的数据包 F.当30分钟内路由表没有改变的时候 3.EIGRP更新的两个特点是什么? D、F A.包含所有EIGRP路由 B.包括全部路由表 C.独立体系 D.只对路由拓扑变化进行触发 E.使用广播到邻居 F.限定只向需要的路由器发送更新 4.RIP中附加了什么特性来帮助解决同步错误?B A.抑制计时器 B.RIP-JITTER C.RIP-DELAY D.抖动控制 5.下面哪两个是RIP使用的计时器?A、C A.Invalid B.Refresh C.Flush D.Deadlink E.Hello 6.有关距离矢量协议的优点哪些说法是正确的?C A.周期更新加速收敛 B.执行容易导致配置简单

C.在复杂网络中能够工作得很好 D.它的收敛时间比链路状态路由协议还要快 7.下面哪些机制可以避免计数到无穷大的环路?C A.水平分割 B.路由毒化 C.抑制计时器 D.触发更新 E.带毒性反转的水平分割 8.参考图4-28。网络中运行RIP路由协议。什么机制将阻止R4向R5发送关于10..0.0.0 网络的更新?A A.水平分割 B.毒性反转 C.路由毒化 D.抑制计时器 E.最大跳数 9.什么机制通过通知度量为无穷大来使RIP避免环路?B A.水平分割 B.路由毒化 C.抑制计时器 D.最大跳数 E.IP头中生存时间(TTL)字段 10.IP头中的哪个字段保证数据包在网络中不会无限循环? C A.CRC B.TOC C.TTL D.Checksum 11.映射防止环路的机制到它的相应功能。 防止环路机制 水平分割 路由毒化 抑制计时器 触发更新 功能: A.通过一个接口学习以路由不会再向该接口发送通告 B.通过一个接口学习到路由向相同的接口返回通告不可达信息 C.拓扑一改变就立即发送给邻居路由器 D.它允许通过全网传递拓扑改变的时间 答案: 水平分割:A

第4章 距离矢量路由协议

第4章距离矢量路由协议 1.以下哪种事件将导致触发更新? (A)更新路由计时器超时 (B)接收到损坏的更新消息 (C)路由表中安装了一条路由 (D)网络已达到收敛 2.三台正在运行距离矢量路由协议的路由器全部断开了所有供电电源(包括备用电池)。当这些路由器重新加载时,会发生什么情况? (A)它们将与直连的邻居共享断电之前保存在NVRAM 中的所有路由信息。 (B)它们将向网络中的所有其它路由器组播hello 数据包以建立邻居邻接关系。(C)它们将向其直连的邻居发送仅包含直连路由的更新。 (D)它们将向网络中的所有路由器广播其完整的路由表。 3.RIP 抑制计时器的作用是什么? (A)确保无效路由的度量为15 (B)对于在网络中造成路由环路的路由器,禁止其发送任何更新 (C)在发送更新前确保每条新路由都有效 (D)指示路由器在指定的时间内或特定事件下,忽略有关可能无法访问路由的更新4.下列关于RIPv1 路由更新功能的陈述,哪两项是正确的?(选择两项。) (A)仅当拓扑结构发生变化时才广播更新 (B)以一定的时间间隔广播更新 (C)广播发送到0.0.0.0 (D)广播发送到255.255.255.255 (E)更新中包含整个网络拓扑结构 (F)更新中仅包括所发生的变化 5.下列有关RIP 的陈述,哪一项是正确的? (A)它每60 秒便会向网络中的所有其它路由器广播更新 (B)它每90 秒便会使用多播地址向其它路由器发送更新 (C)它将在发生链路故障时发送更新 (D)更新中仅包含自上次更新以来路由所发生的变化 6.哪两项陈述正确描述了EIGRP?(选择两项。) (A)EIGRP 可以用于Cisco 路由器和非Cisco 路由器。 (B)EIGRP 将在拓扑结构中发生影响路由信息的改变时发送触发更新。 (C)EIGRP 的无穷度量为16。 (D)EIGRP 发送部分路由表更新,其中仅包含发生变化的路由。 (E)EIGRP 向网络中的所有路由器广播更新。 7.下列有关cisco RIP_JITTER 变量的陈述,哪一项是正确的? (A)它会在更新从路由器接口送出时缓冲更新,以此防止路由更新同步。 (B)它会从下一次路由更新间隔中减去随机时间段(大小为指定间隔时间的0% 到15%),以此防止路由更新同步。 (C)它会使路由器跳过每一个其它计划更新时间,以此防止路由更新同步。 (D)它会强制路由器在发送自身更新之前侦听链路上的其它更新是何时发送的,以此防止路由更新同步。 8.RouterA 与网络114.125.16.0 失去连接后,会发生什么情况?(选择两项。)

计算机网络距离矢量路由算法实验报告

计算机网络实验报告

距离矢量路由算法 一,实验内容: A D 设计一个算法,实现上面拓扑图的各个结点之间路由表的交换,要求显示出结点路由表的交换过程并显示每次交换结束后的各个结点保存的路由表的内容。最后显示交换了几次后各个结点路由表开始变得稳定。 二,算法设计: 首先创建一个类。它有两个成员变量。一个是二维数组型的x[i][j]用来存放从加点i到结点j的距离,一个是一位数组型的y[i]用来存放从源结点到目标结点i的路径上的第一个途经的结点。然后为每一个结点实例化一个对象用来存放此节点的路由表。初始化各个节点的路由表,如果两个节点之间有连线则将其之间的距离赋给x[i][j],y[j]=j.如果没有直接路径则设 x[i][j]=1000,y[j]=0.算法开始的时候各个结点交换路由表。比较如果有类似x[i][j]和x[j][k]的项则设置 x[i][k]=MIN(x[i][k],x[i][j]+x[j][k]),为了在结点A的邻居节点执行距离矢量路由更新时,它使用的是A的旧表,可以再设置两个二

维数组用来暂时存放各个节点的新路由表,待各个节点一次交换都完毕后在把暂存的新节点依次赋给各个节点的路由表。各个节点都执行此操作,为了确定供交换了几次可以设置一个标质量k.初始k=0,交换一次K就加一,最后k的值便是交换的次数。 三,遇到的问题及解决方案: 刚开始遇到这个题目是觉得无从下手,觉得这个图这么复杂函数循环又没有规律怎样让各个节点依次交换呢,又怎样判断什么时候各个节点的路由表变稳定呢?着一些列的问题使自己变得很烦躁。待到心情平静下来认真的一点一点推敲的时候发现只有七个节点,为每个节点设置一个交换函数也不麻烦而且这样思路便变得非常的清楚,至于怎样知道何时路由表稳定则我在每个结点函数中设置了一个标志量,在主函数中将其初始化为零,在下面的结点函数中都将其变成1,这样只有调用子函数这个标志量便会变成1,检测标质量是否为1来判断路由表是否变的稳定。 四,源代码 package wangluo; class Jiedian { int y[]=new int[8]; //存放路径上的下一个节点 int x[][]=new int[8][8]; //存放节点间的距离 } public class Luyou { public static void main(String[] args) { Jiedian a=new Jiedian();

路由算法介绍

路由算法介绍 网络层的作用:1、路由选择 2、网络互连 3、拥塞控制 4、为上层提供服务 网络层的主要功能是将分组从源机器路由到目标机器。完成路由选择的路由算法是网络层设计的最主要内容。 路由算法:它负责确定一个进来的分组应该被传送到哪一条输出线路上。 如果是数据报子网,将在每一个分组到达时作此决定 如果是虚电路子网,是在虚电路建立时决定,该连接上所有分组都将沿此线路传输 路由算法设计必须考虑的问题:正确性简单性健壮性稳定性公平性最优性路由算法的原则:按照某种指标(传输延迟,所经过的站点数目等)找到一条从源节点到目标节点的较好路径。 静态算法:不会根据当前测量或者估计的流量和拓扑结构,来调整它们的路由决策,所有的路由选择是预先在离线情况下计算好的,在网络启动的时候被下载到路由器中。 1、最短路径路由:

如图所示,图中的每个节点代表一台路由器,每条弧代表一条通信线路,线路上的数字是它的开销。现在我们想找到从A到D的最短路径。过程: (1)节点A标记为永久节点,依次检查每一个与A相邻的节点,并检查它们与A之间的距离。 (2)如果新的标记距离小于该节点原来的标记,说明找到了一条更短路径,该节点需要重新标记,作为暂时性标记 (3)检查整个图中所有有暂时性标记的节点,使其中具有最小标记的那个节点成为永久节点,并且作为下一个工作节点。 (4)重复上述过程,直到没有新的永久节点为止。 如下图所示 2、扩散法:每一个进来的分组将被发送到除了它进来的那条线路之外的每一条输出线路上。 产生的问题:会产生大量的重复分组。

解决办法: 在数据包头设一个计数器初值,每经过一个节点自动减1,计数值 为0 时,丢弃该数据包 在每个节点上建立登记表,则数据包再次经过时丢弃 缺点:重复数据包多,浪费带宽 优点:可靠性高,可用于并发数据库更新。极好的健壮性,可用于军事应用。常作为衡量标准,评价其它路由算法 现代计算机网络通常使用动态的路由算法(自适应算法),而不是上面介绍的静态路由算法,因为静态路由算法不会考虑到网络的当前负载情况。 自适应算法:随拓扑结构和流量的变化改变它们的路由决策,又称为动态路由算法。 1、 距离矢量路由:每个路由器维护一张表(即一个矢量),表中列出了当前抑制的到每个目标的最佳距离,以及所使用的线路。通过邻居之间互相交换信息,路由器不断更新它们内部的表。 举例: B A E F D C 2 3 7 6 1 8 5 4 延迟信息B

RIP(距离矢量协议)

RIP协议 基本特征 ★路由信息协议(Routing Information Protocol) ★标准的距离矢量协议 ★以跳数为单位 ★只适合于小型网络 ★路由更新是周期性的 ★两种数据包:请求包、更新包 ★默认下是30s更新整个路由表,通过UDP520端口更新。(更新时间有15% 左右的偏差,一般在25.5~30s之间) ★版本:default(默认版本)、v1、v2 ★Rip协议没有邻居表,不知道其邻居位置 (若网络很大,则收敛很慢, 因此,有可能产生环路) ★解决环路的措施: 1)水平分割 (针对接口来说的) 2)毒性逆转(跳数<=15) 3)跳数 4)触发更新(只更新变化部分的内容) 5)时间抑制 ★v1和v2版本的共同点: 都是距离矢量协议; 都以跳数为度量值(<=15,16跳代表网络不可达); 都是周期性更新路由表; 管理距离(路由的可靠程度)都是120; 都支持触发更新; 都支持等价的负载均衡(默认是4条,最多支持6条); ★CDP协议(Cisco Discover Protocols)—>思科专有协议 (只有cdp可以看到别人的接口信息,其余的都只能看到自己的接口) ★被动接口

含义:如果一个接口被配成被动接口,则这个接口只接收路由,不发送路由;如果要发送,可以使用单播的方式发送; R1(config-router)#passive-interface 接口 ★默认版本或V1传递子网掩码(示例2) 在默认版本或V1汇总中,需要注意的问题: * 汇总的本质是在网络边界进行汇总,其内部网络还是可以传递子网掩码的; * rip的汇总是在接口上进行汇总的; RIP路由自动汇总,就是当子网路由穿越有类网络边界时,将自动汇总成有类网络路由。RIPv1和RIPv2缺省情况下将进行路由自动汇总。 ★ V2可以把自动汇总(auto-summary)关闭,但在V1中不可以。(示例3) 1)人工汇总可以更加精确的汇总,只存在无类中,有类中不存在; 在要汇总的接口上打“ip summary-address rip IP地址” (此法只适合汇总后的掩码大于主类地址的掩码) 2)#ip route 汇总IP地址 255.255.255.0 null 0 (人工静态路由汇总)(此法适合与汇总后掩码比主类地址小) ★ Rip V2 认证: 若配了明文和md5,则md5会覆盖掉明文认证; >>明文认证: R1(config)#key chain R1 Word key chain name R1(config-keychain)#key 1 <0-2147483647> Key identifier R1(config-keychain-key)#key-string ccie 0 Specifies an UNENCRYPTED password will follow 7 Specifies a HIDDEN password will follow LINE The UNENCRYPTED (cleartext) user password * 配好之后,要在接口上调用 如果同一时间有多个key,则只发送最小key下的密码,到对方依次匹配下去。 >> MD5认证: 同一时间有多个key,则发送key的num和密码,并且只往下面找一跳。

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