非自适应算法不能根据网络当前实际传输量和拓扑变化 来做路由选择,而且按原先设计好的路径传送,路径的 设定和修改是静态的。非自适应路由算法包括扩散式 随机式和固定式等 ■自适应算法是根据当前网络流量和拓扑而动态进行的, 能较好地适应网络中通信量和拓扑的变化。自适应算法 包含集中式、孤立式、分布式、混合式和分层式等
◼ 非自适应算法不能根据网络当前实际传输量和拓扑变化 来做路由选择,而且按原先设计好的路径传送,路径的 设定和修改是静态的。非自适应路由算法包括扩散式、 随机式和固定式等。 ◼ 自适应算法是根据当前网络流量和拓扑而动态进行的, 能较好地适应网络中通信量和拓扑的变化。自适应算法 包含集中式、孤立式、分布式、混合式和分层式等
从宏观上看,互联网采用的是一种分层、分布式的路由 算法;从微观上看,在局部范围内可能采用各种不同的 路由算法 目前常用的自适应的分布式路由算法有距离向量法、链 路状态算法两种
◼ 从宏观上看,互联网采用的是一种分层、分布式的路由 算法;从微观上看,在局部范围内可能采用各种不同的 路由算法。 ◼ 目前常用的自适应的分布式路由算法有距离向量法、链 路状态算法两种
1、距离向量法 ■距离向量法( Vector- Distance)又称为Ford- Fulkerson、 Bellman-Ford或 Bellman算法。这种算法的思想比较简单, 每台路由器周期性地与相邻路由器交换路由表中的信息。 ■路由信息是由若干(V,D)序偶组成的序偶表。在(V, D)序偶中,V代表向量,指出该路由器可以到达的目标 (网络或主机),D代表去往目标ⅴ的距离。D按照路径上 的hop个数来计数。其它路由器收到(V,D)报文后,根 据最短路径原则对各自的路由表进行刷新
◼ 距离向量法(Vector-Distance)又称为Ford-Fulkerson、 Bellman-Ford或Bellman算法。这种算法的思想比较简单, 每台路由器周期性地与相邻路由器交换路由表中的信息。 ◼ 路由信息是由若干(V,D)序偶组成的序偶表。在(V, D)序偶中,V代表向量,指出该路由器可以到达的目标 (网络或主机),D代表去往目标V的距离。D按照路径上 的hop个数来计数。其它路由器收到(V,D)报文后,根 据最短路径原则对各自的路由表进行刷新。 1、距离向量法
距离向量算法步骤: ◆首先,当一个路由器启动时,对其ⅴ-D路由表进行初始 化,包含去所有与本路由器直接相连的网络的路由,距 离为0。 ◆然后,各路由器周期性地向外广播其V-D路由表的内容 ,与之相连的路由器Gi收到后,检查各相邻路由器Gj的 V-D报文,并做相应修改: (1)Gj中的某个向量Vm在Gi中没有,则Gi路由表中需 要增加相应的表项,且 Gi(Vm):≡Gj(Vm); Gi(Dm):=Gi(Dm)+1 Gi(nexthop-m):=Gj
◆ 首先,当一个路由器启动时,对其V-D路由表进行初始 化,包含去所有与本路由器直接相连的网络的路由,距 离为 0。 ◆ 然后,各路由器周期性地向外广播其V-D路由表的内容 ,与之相连的路由器Gi收到后,检查各相邻路由器Gj的 V-D报文,并做相应修改: (1)Gj中的某个向量Vm在Gi中没有,则Gi路由表中需 要增加相应的表项,且 Gi(Vm):=Gj(Vm); Gi(Dm):=Gj(Dm)+1; Gi(nexthop‒m):=Gj; 距离向量算法步骤:
(2)G中的路由比G中的路由短时, 即Gj(Dn)<Gi(Dn)-1时, Gi(Dn):=Gj(Dn)+1 Gi (nexthop-n):= Gi (3)Gi中的 nexthop是Gi,而G中去往该目的路径发生了变化: ①Gj的VD表不再包含去往该目的的路由,则G中应删去该 路由; ②Gj的VD表去往该目的的距离发生变化, 即Gi(D0)托Gj(D0),则G中的距离需要修改为: Gi(D0):=Gj(D0)+1;
(2)Gj中的路由比Gi中的路由短时, 即 Gj(Dn)< Gi(Dn)-1时, Gi(Dn):= Gj(Dn)+1; Gi(nexthop‒n):= Gj; (3)Gi中的nexthop是Gi,而Gj中去往该目的路径发生了变化: ① Gj的V-D表不再包含去往该目的的路由,则Gi中应删去该 路由; ② Gj的V-D表去往该目的的距离发生变化, 即Gi(D0)≠Gj(D0),则Gi中的距离需要修改为: Gi(D0):= Gj(D0)+1;