本文主要介绍距离矢量路由(distance vector routing)算法,也可以叫做Bellman-Ford路由算法(这是根据设计者的名字来命名的),该算法应用于很多网络协议中,例如著名的RIP。
距离矢量算法(我们简称它为DV,而链路路由算法我们简称为LS)是一种迭代的、异步的、分布式的算法。首先,说它是迭代的,是因为这个过程一直要持续到邻居之间没有更多信息需要交换为止。其次,说它是异步的,是因为不需要所有路由器同步一致地进行操作。最后,说它是分布式的,是因为每个结点都要从它的邻居接受信息,同时也要发送信息给它的邻居。并且每个结点需要知道的只是它的邻居的信息,而不需要了解整个网络的拓扑等信息。
在真正学习DV算法之前,我们需要了解一个很著名的方程,因为DV算法就是利用这个方程在不断更新每个路由表的信息的。这个方程叫做Bellman-Ford方程:
dx(y)= minv { c(x,v)+ dv(y)}