路由算法的核心是路由选择算法,设计路由算法时要考虑的技术要素有:
(1)选择最短路由还是最佳路由;
(2)通信子网是采用虚电路操作方式还是采用数据报的操作方式;
(3)采用分布式路由算法还是采用集中式路由算法;
(4)考虑关于网络拓扑、流量和延迟等网络信息的来源;
(5)确定采用静态路由还是动态路由。
IP路由算法是路由器在接收一个数据报以后,根据路由表的信息进行路由的具体步骤。其处理过程如下:
从数据报中提取目的IP地址D,计算网络前缀N
if N与任何直接连接的网络的地址匹配
then 通过该网络把数据报直接交付到目的地D
else if 表中包含特定于具体主机的一个到D的路由
then 把数据报发送到表中指定的下一跳
else if 表中包含到网络N的一个路由
then 报数据报发送到表中指定的下一跳
else if 表中包含一个默认路由
then 把数据报发送到表中指定的默认路由器
else 宣布路由出错
下面是一个路由器的路由表的实例: