当链路状态路由算法构建完LSDB后,接下来节要调用SPF算法,对LSDB内的LSA进行处理,计算出所有路径。SPF算法在《Routing TCP/IP volmun I》的OSPF章节中有描述。
SPF算法简单描述如下(LSDB已收敛):
一、选定根节点;
二、遍历该选定节点的所有直连节点。遍历过程中,若根与某节点的分支为
l 新分支,则添加该分支到分支列表,并记录分支的权重、根的下一跳;
l 已存在于分支列表,则与分支列表中已存在分支的权重值比较优劣,并把较优值更新到分支列表中;
l 已存在于权重列表,则忽略;
三、把分支列表中的最优分支移出至权重列表,并选定该分支的节点;
四、若分支列表非空,则继续步骤三;否则算法结束。