当前位置: 首页 > news >正文

BGP路由优选

BGP 的路由优选规则是一套多步决策链,用来确定在多个可行路由中选择最优的路由。BGP 是一种路径向量协议,通过这些优选规则,网络管理员可以控制数据流量的流向,确保网络的稳定性和效率。下面以一个实例来详细说明 BGP 的优选规则及其链条。

BGP 路由优选规则的步骤

BGP 有一套固定的优选规则链,规则按照优先级顺序依次检查,直到找到一个最优路由。以下是 BGP 常用的优选规则(从高到低):

  1. 优先最高的 Weight 值(仅限于 Cisco 路由器特性)
  2. 优先本地优先级(Local Preference)值
  3. 优先本地产生的路由
  4. 优先最短的 AS 路径(AS_PATH)
  5. 优先最低的 Origin 类型
  6. 优先最低的 MED(Metric)值
  7. 优先到达下一跳的 IGP 距离
  8. 优先来自最低的 Router ID 的路由

实例说明

假设公司 A 的网络(AS100)有 3 个上联 ISP,分别是 ISP1(AS200),ISP2(AS300),和 ISP3(AS400)。每个 ISP 都通告了一条到达目标网络 192.168.1.0/24 的路由,具体情况如下:

  • ISP1:AS_PATH 为 200 300,Local Preference 为 100,MED 为 10,Router ID 为 1.1.1.1
  • ISP2:AS_PATH 为 300,Local Preference 为 200,MED 为 20,Router ID 为 2.2.2.2
  • ISP3:AS_PATH 为 400 300,Local Preference 为 100,MED 为 5,Router ID 为 3.3.3.3

我们来一步步分析该如何选择最优路径:

  1. Weight:假设没有特别配置 Weight 值。Weight 值缺省为 0,不会影响路由选择。

  2. Local Preference

    • ISP1 的 Local Preference 为 100。
    • ISP2 的 Local Preference 为 200。
    • ISP3 的 Local Preference 为 100。
    • 因为 ISP2 的 Local Preference 最高(200),优选 ISP2 的路由。

    结果:此时,BGP 已经选择了 ISP2 的路由为最优路径,不再需要继续检查其他规则。如果没有 Local Preference 优先级的差异,继续以下规则。

  3. AS_PATH 长度(如果没有 Local Preference 差异):

    • 如果 Local Preference 相同,我们会看 AS_PATH 长度。
    • 比较 ISP1 和 ISP3 的 AS_PATH:
      • ISP1 的 AS_PATH 为 200 300,长度为 2。
      • ISP3 的 AS_PATH 为 400 300,长度也是 2。
    • 此时,ISP1 和 ISP3 的 AS_PATH 长度相同,继续比较下一个优选条件。
  4. Origin 类型

    • 假设三条路由的 Origin 类型相同,继续比较下一项。
  5. MED 值

    • ISP1 的 MED 为 10。
    • ISP3 的 MED 为 5。
    • MED 值越小越优,因此优选 ISP3。

    结果:若之前条件无法选出最优路径,ISP3 的路由将被选为最优路径。

  6. IGP Metric 到 Next_Hop 的距离(如果前面的规则都相同):

    • 比较到达 ISP1 和 ISP3 的下一跳的 IGP 距离,距离越近越优。
  7. Router ID(最后一项):

    • 假如上面所有的条件都相同,我们会选择 Router ID 最小的路由。因此在这种情况下,优选来自 Router ID 1.1.1.1(ISP1)的路由。
http://www.lryc.cn/news/471667.html

相关文章:

  • cjson内存泄漏问题注意事项
  • 雷军救WPS“三次”,WPS注入新生力量,不再“抄袭”微软
  • zookeeper全系列学习之分布式锁实现
  • 耐用的内衣洗衣机有哪些?双11好用内衣洗衣机品牌排行榜
  • 富格林:曝光可信经验击败陷阱
  • 3211、生成不含相邻零的二进制字符串-cangjie
  • 【wpf】wpf程序联合控制台测试
  • 使用 Spring Doc 为 Spring REST API 生成 OpenAPI 3.0 文档
  • ssm基于ssm框架的滁艺咖啡在线销售系统+vue
  • 微信小程序 - 动画(Animation)执行过程 / 实现过程 / 实现方式
  • 【Linux】nohup 命令
  • CSS、Less、Scss
  • [笔记] ffmpeg docker编译环境搭建
  • 基于SSM的心理咨询管理管理系统(含源码+sql+视频导入教程+文档+PPT)
  • 南开大学《2023年+2022年810自动控制原理真题》 (完整版)
  • 【算法】Kruskal最小生成树算法
  • Pocket通常指的是一种特定的凹形或凹槽
  • Cesium基础-(Entity)-(Billboard)
  • 从0到1,解读安卓ASO优化!
  • go语言中流程控制语句
  • k8s 部署 emqx
  • CSS.导入方式
  • Linux之nfs服务器和dns服务器
  • 大模型系列——AlphaZero/强化学习/MCTS
  • 原生js实现拖拽上传(拖拽时高亮上传区域)
  • python道格拉斯算法的实现
  • STM32的hal库中,后缀带ex和不带的有什么区别
  • 可观测性三大支柱
  • 【银河麒麟高级服务器操作系统·实例分享】裸金属服务器开机失败分析及处理建议
  • 模型剪枝实操