《IS-IS网络设计解决方案》一6.2 使用SPF算法计算IS-IS路由

简介:

本节书摘来自异步社区《IS-IS网络设计解决方案》一书中的第6章,第6.2节,作者【美】Abe Martey,更多章节内容可以访问云栖社区“异步社区”公众号查看

6.2 使用SPF算法计算IS-IS路由

IS-IS网络设计解决方案
ISO 10589附录C2定义了使用SPF算法进行IS-IS协议的路由计算。RFC 1195附录C定义了SPF算法的修改版本从而使IS-IS协议支持IP路由选择。Dijkstra算法产生网络拓扑的最短路径树,从而确定去往不同目标的最短(最优)路径并放入IP路由表。为了获得IP路由的最佳路径,IP子网会被看作是最短路径树的树叶。网络事件只会导致链路状态数据包中IP可达性条目的改变,而不要求重新计算整个最短路径树。在这种状况下,IS-IS协议只需进行部分路由计算(Partial Route Calculation,PRC)而不是完整地运行SPF算法。在大多数情况下,IS-IS路由计算中无处不在的PRC优化了IP路由选择收敛的执行效率。

前文曾提到SPF算法的计算时间的阶数O(LlogN),其中L为链路数量,N为节点数量。LogN因子是由Dijkstra算法操作的步骤2(见图6-2)产生的。T集合中的元素会预先按照开销进行排序从而避免在选择最低开销元素时进行线性搜索。在排序的T集合中使用二进制搜索机制并插入新条目所需的处理时间引入了logN因子。通过使用一个基于6位字段的有限路径开销(ISO 10589中定义),可以将复杂性阶数优化并降低为O(N),从而消除了logN。这是通过使用快速的阵列排序数据结构,将节点按照路径开销而不是逻辑距离进行散列排序实现的。不幸的是,随着时间推移,在IS-IS网络设计及其他IS-IS路由选择应用(例如MPLS流量工程)中,6位的度量字段已经不足以提供足够的灵活性。在IS-IS中采用更大路径开销(宽度量)很明显地要比小而有限的路径开销(窄度量)具有网路优化方面的优势(见第5章)。

RFC 1195对IS-IS路由选择的SPF算法进行了修改,允许在多条等价路径上实现负载均衡。但在通常情况下,Dijkstra算法仍按照前文所述的过程工作。在RFC 1195附录C中对SPF算法的操作进行了很好的描述。在构建最短路径树时会使用以下三种列表:未知或候选列表(Unknown or candidate list,UNK)、实验列表(Tentative,TENT)和已知路径列表(known Paths,PATHS)。当SPF开始运行时,所有的节点放入UNK中。随后在初始化时将源节点移入PATHS。节点会根据其下一跳及度量信息放入TENT,从而进一步检查其是否可以放入PATHS。IS-IS为所有邻居维护一个邻接数据库,为SPF的运行提供TENT中直连邻居的下一跳信息。对于非直连的主机,从PATHS中经过其父节点获得第一跳信息。存放在TENT和PATHS中的条目是由三元组组成的:{n, d(n), Adj(n)},其中:

  • n=系统ID;
  • d(n)=从源s到n的距离;
  • Adj(n)=源s已知的n有效邻接的集合。

在算法的每一步都需要检查TENT列表,具有到源的最小开销的节点将被移入PATHS。当节点被放入PATHS后,该节点所通告的IP前缀及相应的度量和下一跳信息将放入IS-IS路由选择信息库(IS-IS Routing Information Base,RIB)。如果放入PATHS中的节点的直连邻居不在TENT中,则将其移入TENT并对其开销进行相应的调整,以进行下一次选择。

请注意IP内部及外部前缀包括地址和掩码在内共占8字节,这些前缀永远都是叶子。

相关文章
|
13天前
|
负载均衡 网络协议 算法
|
6天前
|
网络协议 网络安全 数据安全/隐私保护
计算机网络概念:网关,DHCP,IP寻址,ARP欺骗,路由,DDOS等
计算机网络概念:网关,DHCP,IP寻址,ARP欺骗,路由,DDOS等
26 4
|
4天前
|
机器学习/深度学习 人工智能 监控
智慧交通AI算法解决方案
智慧交通AI算法方案针对交通拥堵、违法取证难等问题,通过AI技术实现交通管理的智能化。平台层整合多种AI能力,提供实时监控、违法识别等功能;展现层与应用层则通过一张图、路口态势研判等工具,提升交通管理效率。方案优势包括先进的算法、系统集成性和数据融合性,应用场景涵盖车辆检测、道路环境检测和道路行人检测等。
|
5天前
|
机器学习/深度学习 人工智能 算法
基于Python深度学习的【垃圾识别系统】实现~TensorFlow+人工智能+算法网络
垃圾识别分类系统。本系统采用Python作为主要编程语言,通过收集了5种常见的垃圾数据集('塑料', '玻璃', '纸张', '纸板', '金属'),然后基于TensorFlow搭建卷积神经网络算法模型,通过对图像数据集进行多轮迭代训练,最后得到一个识别精度较高的模型文件。然后使用Django搭建Web网页端可视化操作界面,实现用户在网页端上传一张垃圾图片识别其名称。
25 0
基于Python深度学习的【垃圾识别系统】实现~TensorFlow+人工智能+算法网络
|
7天前
|
网络虚拟化 数据安全/隐私保护 数据中心
对比了思科和华为网络设备的基本配置、接口配置、VLAN配置、路由配置、访问控制列表配置及其他重要命令
本文对比了思科和华为网络设备的基本配置、接口配置、VLAN配置、路由配置、访问控制列表配置及其他重要命令,帮助网络工程师更好地理解和使用这两个品牌的产品。通过详细对比,展示了两者的相似之处和差异,强调了持续学习的重要性。
21 2
|
8天前
|
网络协议 定位技术 网络架构
IP 路由:网络世界的导航仪
IP 路由:网络世界的导航仪
22 3
|
16天前
|
网络协议 网络安全 数据安全/隐私保护
计算机网络概念:网关,DHCP,IP寻址,ARP欺骗,路由,DDOS等
【10月更文挑战第27天】计算机主机网关的作用类似于小区传达室的李大爷,负责将内部网络的请求转发到外部网络。当小区内的小不点想与外面的小明通话时,必须通过李大爷(网关)进行联系。网关不仅帮助内部设备与外部通信,还负责路由选择,确保数据包高效传输。此外,网关还参与路由表的维护和更新,确保网络路径的准确性。
40 2
|
21天前
|
机器学习/深度学习 人工智能 算法
【车辆车型识别】Python+卷积神经网络算法+深度学习+人工智能+TensorFlow+算法模型
车辆车型识别,使用Python作为主要编程语言,通过收集多种车辆车型图像数据集,然后基于TensorFlow搭建卷积网络算法模型,并对数据集进行训练,最后得到一个识别精度较高的模型文件。再基于Django搭建web网页端操作界面,实现用户上传一张车辆图片识别其类型。
65 0
【车辆车型识别】Python+卷积神经网络算法+深度学习+人工智能+TensorFlow+算法模型
|
23天前
|
机器学习/深度学习 算法 数据安全/隐私保护
基于贝叶斯优化CNN-LSTM网络的数据分类识别算法matlab仿真
本项目展示了基于贝叶斯优化(BO)的CNN-LSTM网络在数据分类中的应用。通过MATLAB 2022a实现,优化前后效果对比明显。核心代码附带中文注释和操作视频,涵盖BO、CNN、LSTM理论,特别是BO优化CNN-LSTM网络的batchsize和学习率,显著提升模型性能。
|
5天前
|
网络协议 网络虚拟化 数据中心
广播域与段间路由:详解网络隔离与通信机制
广播域与段间路由:详解网络隔离与通信机制
16 0

热门文章

最新文章