《BGP设计与实现》一2.8 路由选择信息库

简介:

本节书摘来自异步社区《BGP设计与实现》一书中的第2章,第2.8节,作者【美】Randy Zhang , Micah Bartell,更多章节内容可以访问云栖社区“异步社区”公众号查看

2.8 路由选择信息库

BGP设计与实现
如前面章节“比较控制层面和转发层面”所提到的一样,IP RIB,或者称为IP路由选择表,是一个十分关键的数据库,它为控制层面和转发层面之间提供了重要的联系。一方面,不同的路由选择源,或路由选择协议,例如BGP和IS-IS,都将它们的路径加载到RIB中。另一方面,RIB为创建转发数据库(一些交换方法直接使用RIB进行数据转发)提供信息。

当每一种路由选择协议接收路由更新或者其他信息时,它会选择到达任何给定目的地的最佳路径,并尝试把这条路径安装到路由选择表中。当多条到达同一条前缀/掩码的路径存在时,路由器会根据该协议所涉及的管理距离来决定是否安装路由。IOS已经为不同的路由选择协议,或路由选择源预先定义了管理距离,但这些管理距离是可以被配置的。来自于较低管理距离的路由选择源的前缀优先。备份路由仍然被路由选择协议所维持——如果路由选择协议支持的话——当已存的最佳路由失效时,备份路由可以被用作最佳路由。

注意:

当BGP在IP RIB中安装路由失败时,将会在路由器的BGP RIB中报告一条RIB失败的消息。失败的代码将标识出原因。请查阅附录B以了解更多的信息。
IP RIB被组织成网络描述符块(Network Descriptor Block,NDB)的集合。每一个NDB就是路由选择表中的一个表项,它代表了通过下列3种来源之一获取的网络前缀:

在路由器的本地接口上配置的一个地址/掩码对。这样就成为一条直连路由,它具有最高的优先级,或者说它的管理距离为0。
在路由器上配置的静态路由。静态路由的默认管理距离是1。
动态路由选择协议,例如BGP。
NDB包含的信息有网络地址、掩码、管理距离,还有动态路由选择协议操作所需要的信息,例如路由重分布。因为NDB中的每一条前缀可能通过多条路径到达,因此也使用了路由选择描述符块(Routing Descriptor Block,RDB)。每一个NDB可以连接一个或多个RDB,这些RDB存储了实际的下一跳信息。当前,一个NDB最多可以连接8个RDB,这些RDB设定了基于每目的地(per destination)的负载分担链路数目的上限(也就是8条)。注意到,由于NDB受单个路由选择协议的控制,因此路由选择协议就决定了每个NDB可以关联多少个RDB。

包转发数据库是根据IP RIB和IP ARP表中所包含的信息创建的。在RIB表中执行前缀查找就确定了下一跳地址和出站接口(outgoing interface)。实际的第2层数据帧的头部是基于IP ARP表中的信息创建的。帧中继和ATM映射是另外一些例子,它们使用第3层地址到第2层地址映射的方法。Cisco IOS软件支持两种普通的RIB查找操作(译者注:建议读者参阅Cisco文档http://www.cisco.com/
en/US/tech/tk365/technologies_tech_note09186a0080094823.shtml):

无类(classless)——最长匹配前缀查找。如果没有找到匹配的前缀,就使用默认路由;如果有,就使用它。从Cisco IOS软件版本11.3开始就使用默认的IP无类查找了(虽然它仍然显示在运行配置中)。
有类——最长匹配查找。如果路由选择表包含了目的主网络(major network)(由目的地址解析出的有类网络)的子网,那么将不考虑选择超网(supernet)和默认路由。

相关文章
|
网络安全 持续交付 开发工具
使用ssh连接到gitHub Actions服务器
本文是博主学习github的记录,希望对大家有所帮助。
1214 0
|
机器学习/深度学习 存储 人工智能
云计算平台选择之路:AWS、Azure和Google Cloud的比较与抉择
在当今数字化时代,云计算平台扮演着企业转型和创新的关键角色。本文将对三大主流云计算平台——AWS、Azure和Google Cloud进行比较分析,为读者提供选择指南。我们将从性能、可靠性、生态系统、服务和定价等方面综合评估,以帮助读者做出最适合他们业务需求的决策。
1286 0
|
存储 Shell Linux
【Shell 命令集合 系统设置 】⭐⭐⭐Linux 限制进程资源 ulimit命令 使用指南
【Shell 命令集合 系统设置 】⭐⭐⭐Linux 限制进程资源 ulimit命令 使用指南
353 0
|
7月前
2025年阿里云域名备案流程(图文详细教程)
本文详细介绍了2025年阿里云域名备案的全流程,包括注册阿里云账号、企业实名认证、购买服务器、创建域名信息模板、购买域名、域名备案及查询备案号等步骤。通过图文结合的方式,清晰展示了每个环节的操作方法和注意事项,帮助用户顺利完成域名备案。文章强调了域名备案的前提是国内需有一台服务器,并提供了具体配置建议,同时提醒用户注意邮箱验证和短信核验等关键步骤,确保备案顺利通过。
9250 13
|
8月前
|
缓存 网络协议 API
掌握网络通信协议和技术:开发者指南
本文探讨了常见的网络通信协议和技术,如HTTP、SSE、GraphQL、TCP、WebSocket和Socket.IO,分析了它们的功能、优劣势及适用场景。开发者需根据应用需求选择合适的协议,以构建高效、可扩展的应用程序。同时,测试与调试工具(如Apipost)能助力开发者在不同网络环境下优化性能,提升用户体验。掌握这些协议是现代软件开发者的必备技能,对项目成功至关重要。
|
8月前
|
人工智能 Java 数据库
飞算JavaAI vs 文心快码,面对复杂需求,谁的代码精准度更胜一筹?
在数字化浪潮中,Java 作为核心编程语言,各类开发工具不断涌现。百度文心快码与飞算 Java AI 凭借先进的人工智能技术成为焦点。综合对比数据库表设计、代码完整度及用户体验,二者谁更胜一筹?
|
负载均衡 网络协议 算法
|
11月前
|
机器学习/深度学习 人工智能 算法
【AI系统】AI 编译器后端优化
AI编译器采用多层架构,首先通过前端优化将不同框架的模型转化为统一的Graph IR并进行计算图级别的优化,如图算融合、内存优化等。接着,通过后端优化,将优化后的计算图转换为TensorIR,针对单个算子进行具体实现优化,包括循环优化、算子融合等,以适应不同的硬件架构,最终生成高效执行的机器代码。后端优化是提升算子性能的关键步骤,涉及复杂的优化策略和技术。
492 3
|
存储 缓存 网络协议
|
网络协议
通俗易懂理解三次握手、四次挥手(TCP)
这篇文章用通俗的语言解释了TCP协议中的三次握手和四次挥手过程,通过比喻和详细的状态变化描述,帮助读者理解建立和断开连接的原理和原因。
通俗易懂理解三次握手、四次挥手(TCP)