标签:项目 维护 规模 部分 链路 32位 矢量 工作 哪些
1.最佳路径的每一部分也是最佳路径
如果路由器J在从路由器I到K的最优路径上,那么从J到K的最优路径必定沿着同样的路由路径
2.通往路由器的所有最佳路径的并集是一棵称为汇集树
3.路由算法的目的
为所有路由器找出并使用汇集树
Dijkstra算法
1.每个节点用从源节点沿已知最佳路径到该节点的距离来标注,标注分为临时性标注和永久性标注
2.初始时,所有节点都为临时性标注,标注为无穷大
3.将源节点标注为0,且为永久性标注,并令其为工作节点
4.检查与工作节点相邻的临时性节点,若该节点到工作节点的距离与工作节点的标注之和小于该节点的标注,则用新计算得到的和重新标注该节点
5.在整个图中查找具有最小值的临时性标注节点,将其变为永久性节点,并成为下一轮检查的工作节点
6.重复第四、五步,直到目的节点成为工作节点
一种将数据包发送到所有网络节点的简单方法,每个节点通过将其发送到所有其他链接之外来泛洪在传入链接上接收到的新数据包,它属于静态算法
每个数据包的头中包含一个跳计数器,每经过一跳后该计数器减1,为0时则丢弃该数据包
记录哪些数据包已经被扩散了,从而避免再次发送这些数据包。方法:
1.每个数据包头一个序号,每次发送新数据包时加1
2.每个路由器记录下它所看到的所有(源路由器,序号)对
3.当一个数据包到达时,路由器检查这个数据包,若是重复的,就不再扩散了
它是一种泛洪方法的一种改进,将进来的每个数据包仅发送到与正确方向接近的线路上
距离向量是一种分布式路由算法,最短路径计算跨节点分配,属于动态算法,被用于RIP协议。
1.每个节点都知道到其邻居的链接的距离
2.每个节点向所有邻居通告已知距离最小的向量
3.每个节点使用接收到的向量来更新自己的向量
4.定期重复
1.每个路由器维护一张路由表(见下图)
2.路由表以子网中每个路由器为索引(如右图的To),且每个路由器对应一个表项
3.表项包括两部分:到达该目的路由器的时间估计或距离估计(如上图的New estimated delay form J),和到达目的路由器的首选使用的输出线路(如右图的Line)
4.每隔一段时间,路由器向所有邻居路由器发送它到每个目的节点的路由表,同时它也接收每个邻居路由器发来的路由表
5.一个路由器接收到来自相邻路由器X发来的表,其中Xi为路由器X到路由器i的距离,若该路由器到X的距离为m,则该路由器经过X到i的距离为Xi+m。根据不同邻居发来的信息,计算Xi+m,并取最小值,更新本路由器的路由表
无穷计算问题
算法的缺陷:对好消息反应迅速,对坏消息反应迟钝
问题的核心:当X告诉Y它有一条路径的时候,Y无从知道他自己是否在这条路径上
1.距离向量路由算法的主要问题
2.选择路由时,没有考虑线路带宽(不同线路的带宽不同)
3.路由收敛速度慢(无穷计算问题)
距离向量的替代,计算更多,但具有简单动态性
每个节点都在LSP(链路状态数据包)中泛洪有关其邻居的信息。
所有节点都学习完整的网络图
每个节点都运行Dijkstra的算法来计算到达其他目的地的路径
1.发现邻居节点,并知道其网络地址
基本思想:
改进:
发送标志为1:需要向此方向转发,
确认标志为1:必须在此方向上被确认
来自A的链路状态数据包可以直接到达,B必须将它发给C、F,向A送回确认
从E发来的链路状态包有两个,一个经过EAB,另一个经过EFB
从D发来的链路状态包有两个,一个经过DCB,另一个经过DFB
广泛用于Internet(OSPF,ISIS)
随着网络规模的增加,路由器的路由表增长过快,占用路由器内存,而且还要费时间去扫描表,非常的麻烦。
路由器被划分成区域,每个路由器知道如何把数据包发送到自己所在的目标地址,但是对其他区域的内部结构显得不知情,当网络彼此连接到一起的时候,很自然就会将每一个网络不必知道其他网络的拓扑结构。
它分成了5个区域,如果采用完整的路由1A路由器有17个表项目,如果采用分级的路由,那么表项在右边,减少了好多。
代价是增加了路由长度
标签:项目 维护 规模 部分 链路 32位 矢量 工作 哪些
原文地址:https://www.cnblogs.com/mengxiaoleng/p/11890343.html