计算机网络-BGP路由优选原则概述

2024-06-04 16:28

本文主要是介绍计算机网络-BGP路由优选原则概述,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

前面我们已经学习了BGP的基础概念、对等体建立、报文类型等,也通过实践完成了IBGP和EBGP的实验配置,其实这些路由协议都是理论比较复杂,但是配置其实比较简单的,今天我们来学习BGP的路由优选原则。

一、IGP路由优选

前面我们学习了IGP的OSPF、IS-IS、RIP等路由,IGP路由一般情况下是通过路由优先级和Cost进行优选的。路由器根据IP数据包的目的地址进行查找路由表,路由表选举最优路由放到本地核心路由表项,然后下发到FIB转发表项,实际是依据转发表进行数据转发。

那比如OSPF间怎么比较哪个最优呢,因为协议优先级都是10,因此通过Cost值来比较谁最优选,在OSPF中通过修改接口的Cost值来实现选路。其它路由协议也是类似。那不同协议怎么比较呢,从OSPF、IS-IS、RIP同时学习到一条路由呢?这就需要通过路由优先级来判断。在华为设备中优先级一般如下:

路由协议优先级
Direct0
OSPF10
IS-IS15
Static60
OSPF ASE150
OSPF NSSA150
IBGP255
EBGP255

也是就是对于相同的路由条目优先比较路由协议优先级,优先级相同比较Cost值。

路由表查看
路由表查看

二、BGP路由属性

BGP定义了多种路径属性,并且拥有丰富的路由策略工具,这使得BGP在路由操控和路径决策上变得非常灵活,针对BGP路由的各种属性的操作都可能影响路由的优选,从而对网络的流量产生影响。

也就是说BGP的路由属性中可以设置为条件的字段比IGP路由多。

BGP路由属性1
BGP路由属性1
BGP路由属性2
BGP路由属性2

三、BGP路由优选原则概览

当到达同一个目的网段存在多条路由时,BGP通过如下的次序进行路由优选:(前提:丢弃下一跳不可达的路由。)

  • 1、优选Preferred-Value属性值最大的路由。(↑ 取值越大越优)
  • 2、优选Local_Preference属性值最大的路由。(↑ 取值越大越优)
  • 3、本地始发的BGP路由优于从其他对等体学习到的路由,本地始发的路由优先级:优选手动聚合>自动聚合>network>import>从对等体学到的。(↓ 取值越小越优,后面几条规则是越小越优)
  • 4、优选AS_Path属性值最短的路由。
  • 5、优选Origin属性最优的路由。Origin属性值按优先级从高到低的排列是:IGP、EGP及Incomplete。
  • 6、优选MED属性值最小的路由。
  • 7、优选从EBGP对等体学来的路由(EBGP路由优先级高于IBGP路由)。
  • 8、优选到Next_Hop的IGP度量值最小的路由。(当前8条属性全部相同时可以形成路由负载分担)
  • 9、优选Cluster_List最短的路由。
  • 10、优选Router ID(Orginator_ID)最小的设备通告的路由。
  • 11、优选具有最小IP地址的对等体通告的路由。

总结:复习了一下IGP路由优选的大概步骤,根据路由协议优先级和Cost值进行选路。BGP有很多字段用于进行路由优选,如Preferred-Value、Local_Preference、AS_Path、MED等等,通过修改这些属性可以实现复杂的选路,如果前8条选路原则一致可以实现路由负载分担。

如果对文章感兴趣欢迎微信搜索公众号:不喜欢热闹的孩子 不喜欢热闹的孩子

本文由 mdnice 多平台发布

这篇关于计算机网络-BGP路由优选原则概述的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1030524

相关文章

golang实现动态路由的项目实践

《golang实现动态路由的项目实践》本文主要介绍了golang实现动态路由项目实践,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习... 目录一、动态路由1.结构体(数据库的定义)2.预加载preload3.添加关联的方法一、动态路由1

C#继承之里氏替换原则分析

《C#继承之里氏替换原则分析》:本文主要介绍C#继承之里氏替换原则,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录C#里氏替换原则一.概念二.语法表现三.类型检查与转换总结C#里氏替换原则一.概念里氏替换原则是面向对象设计的基本原则之一:核心思想:所有引py

Nginx路由匹配规则及优先级详解

《Nginx路由匹配规则及优先级详解》Nginx作为一个高性能的Web服务器和反向代理服务器,广泛用于负载均衡、请求转发等场景,在配置Nginx时,路由匹配规则是非常重要的概念,本文将详细介绍Ngin... 目录引言一、 Nginx的路由匹配规则概述二、 Nginx的路由匹配规则类型2.1 精确匹配(=)2

Python datetime 模块概述及应用场景

《Pythondatetime模块概述及应用场景》Python的datetime模块是标准库中用于处理日期和时间的核心模块,本文给大家介绍Pythondatetime模块概述及应用场景,感兴趣的朋... 目录一、python datetime 模块概述二、datetime 模块核心类解析三、日期时间格式化与

SpringIntegration消息路由之Router的条件路由与过滤功能

《SpringIntegration消息路由之Router的条件路由与过滤功能》本文详细介绍了Router的基础概念、条件路由实现、基于消息头的路由、动态路由与路由表、消息过滤与选择性路由以及错误处理... 目录引言一、Router基础概念二、条件路由实现三、基于消息头的路由四、动态路由与路由表五、消息过滤

Go路由注册方法详解

《Go路由注册方法详解》Go语言中,http.NewServeMux()和http.HandleFunc()是两种不同的路由注册方式,前者创建独立的ServeMux实例,适合模块化和分层路由,灵活性高... 目录Go路由注册方法1. 路由注册的方式2. 路由器的独立性3. 灵活性4. 启动服务器的方式5.

关于最长递增子序列问题概述

《关于最长递增子序列问题概述》本文详细介绍了最长递增子序列问题的定义及两种优化解法:贪心+二分查找和动态规划+状态压缩,贪心+二分查找时间复杂度为O(nlogn),通过维护一个有序的“尾巴”数组来高效... 一、最长递增子序列问题概述1. 问题定义给定一个整数序列,例如 nums = [10, 9, 2

关于Gateway路由匹配规则解读

《关于Gateway路由匹配规则解读》本文详细介绍了SpringCloudGateway的路由匹配规则,包括基本概念、常用属性、实际应用以及注意事项,路由匹配规则决定了请求如何被转发到目标服务,是Ga... 目录Gateway路由匹配规则一、基本概念二、常用属性三、实际应用四、注意事项总结Gateway路由

水位雨量在线监测系统概述及应用介绍

在当今社会,随着科技的飞速发展,各种智能监测系统已成为保障公共安全、促进资源管理和环境保护的重要工具。其中,水位雨量在线监测系统作为自然灾害预警、水资源管理及水利工程运行的关键技术,其重要性不言而喻。 一、水位雨量在线监测系统的基本原理 水位雨量在线监测系统主要由数据采集单元、数据传输网络、数据处理中心及用户终端四大部分构成,形成了一个完整的闭环系统。 数据采集单元:这是系统的“眼睛”,

Java 创建图形用户界面(GUI)入门指南(Swing库 JFrame 类)概述

概述 基本概念 Java Swing 的架构 Java Swing 是一个为 Java 设计的 GUI 工具包,是 JAVA 基础类的一部分,基于 Java AWT 构建,提供了一系列轻量级、可定制的图形用户界面(GUI)组件。 与 AWT 相比,Swing 提供了许多比 AWT 更好的屏幕显示元素,更加灵活和可定制,具有更好的跨平台性能。 组件和容器 Java Swing 提供了许多