BGP的基本概念和工作原理

AS的由来

l Autonomous System 自治系统,为了便于管理规模不断扩大的网络,将网络划分为不同的AS

l 不同AS通过AS号区分,AS号取值范围1-65535,其中64512-65535是私有AS号

l IANA机构负责AS号的分发

AS之间传递路由

l AS之间的连接需要使用直连链路,或者是通过运营商建立VPN进行逻辑连接

l AS之间可能是不同的组织机构,使用IGP协议(例如:OSPF协议)传递路由信息将会有安全风险

AS之间传递路由使用BGP

l 因此我们在AS之间传递路由时使用BGP协议(边界网关路由协议 Border Gateway Protocol)

l 相较IGP协议,BGP协议有以下优势:

Ø BGP基于TCP工作(端口号179),因此只要能够建立TCP连接就可以建立BGP邻居关系;

Ø BGP能够承载上万条路由条目,而IGP仅能上千条;

Ø BGP路由器只传递路由条目,不会暴露AS内的拓扑信息,更加安全;

Ø 支持MPLS/VPN协议,用于传递客户VPN路由

BGP的特征

l BGP是距离矢量路由协议,邻居之间直接传递路由,每条BGP路由都携带多种属性

l 可以使用这些属性配置路由策略,实现灵活的路由选路,这是IGP协议无法做到的

BGP协议的应用场景

l BGP协议在企业中的应用主要有以下两个场景

Ø 大型企业的内部,存在多个分支,每个分支属于一个AS,通过BGP协议在不同分支之间传递路由

Ø 企业可以与运营商之间运行BGP协议,企业与运营商之间互相传递路由

BGP的工作原理

l BGP协议报文以单播的形式发送,BGP共有5种,其中路由是承载在Update报文中

BGP的有限状态机

状态之间的转换规则

BGP对等体

l 运行BGP的路由器被称为BGP Speaker或者BGP路由器

l 两台BGP路由器之间建立的关系叫BGP对等体(Peer)也叫BGP邻居,对等体之间交换BGP路由表

l BGP的Peer分为两种:EBGP和IBGP

l EBGP Peer:位于不同AS的路由器之间的BGP邻居关系

Ø 互为EBGP Peer的路由器彼此所属的AS号不同

Ø EBGP Peer一般基于直连接口建立

Ø Neighbor命令所指定的邻居IP地址要可达,TCP连接要能够正确建立

Ø EBGP的路由管理距离为20,因为AS之间BGP比IGP更优

l IBGP Peer:同属一个AS的路由器之间建立的BGP邻居关系

Ø 互为IBGP Peer的BGP路由器属于同一个AS

Ø IBGP Peer一般基于Loopback接口建立,Peer之间可以跨越路由器,只要TCP连接要能够正确建立

Ø IBGP的路由管理距离为200,因此AS内部IGP更优

BGP的邻居表

l BGP邻居表:包含了此台BGP路由器所有的邻居,以及他们之间的状态;

l BGP默认每隔60秒发送一次BGP/TCP存活消息,保持时间为180秒

l 每台BGP路由器独立维护一张BGP路由表,包含了本地导入以及从BGP peer学习所有BGP路由;

l BGP路由表中可用、最优的路由(标记为 *>)将会加载到全局IP路由表中;

BGP路由的生成

l BGP本身不会自动产生路由,必须要将IGP的路由引入到BGP路由表中。引入的方式有2种

BGP路由的传递

· BGP使用update报文将路由条目发送给BGP peer

· BGP传递路由遵循以下规则:

Ø 仅把BGP路由表中可用且最优(*>)的路由传递给BGP peer

Ø 从EBGP peer获得的路由,会发送给所有BGP peer(包括EBGP和IBGP)

Ø 从IBGP获得的路由默认会通告给它的EBGP peer(如果BGP同步开启则需要再判定)

BGP在AS内部的环路避免机制

l BGP作为一种D-V距离矢量路由协议,通过水平分割防止AS内部的环路

Ø 从IBGP获得的路由不向它的IBGP peer通告,以此来防止循环的发生

Ø IBGP在路由通告时也不会改变路由的下一跳,进一步防止循环的发生

l BGP同时还采用AS-Path属性来防止AS之间的环路

Ø EBGP向对等体通告路由时附加上自己的AS号存放在AS-path属性字段中,收到EBGP对等体Update报文时检查AS-path,如果发现自己的AS号则丢弃该路由,EBGP是依靠路由经过的AS路径来发现循环的

BGP的路由黑洞

l 由于在AS内部可以跨越设备建立IBGP对等体,因此会出现一些路径上的设备未运行BGP

l 这些设备由于未运行BGP,因此自然不会收到BGP传递来的路由信息

l 当有数据包经过这些设备时,因为没有相关路由信息,数据包将会被丢弃

避免路由黑洞问题的方法 —— BGP同步

l BGP协议为了防止路由黑洞问题,引入了同步机制

l 从IBGP对等体学习到的路由在成为最佳路由并向EBGP对等体通告之前必须被IGP学习到

l BGP同步默认关闭,如果开启则不会产生路由黑洞问题,但同时这些路由将无法正常使用

解决路由黑洞问题的方法

l 要想既不产生路由黑洞问题,又要使得这些路由可用,可采用以下方式:

Ø 路由重分布:把BGP的路由重发布到AS内的IGP

Ø IBGP全互联:在穿越路径上IBGP启用全连接,确保所有BGP路由过路设备都知道

Ø 使用MPLS:使用MPLS的转发机制解决穿越AS问题

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/313730.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

NumPy简单学习(需要结合书本)

NumPy简单学习(需要结合书本:Python数据分析与应用) 文章目录 NumPy简单学习(需要结合书本:Python数据分析与应用)前言导库: 一、大概内容1.掌握NumPy数组对象ndarray(1)…

Excel 公式的定义、语法和应用(LOOKUP 函数、HLOOKUP 函数、VLOOKUP 函数;MODE.MULT 函数; ROUND 函数)

一、公式的定义和语法 二、公式的应用 附录 查找Excel公式使用方法的官方工具【强烈推荐!!!】:Excel 函数(按字母顺序)【微软官网】 excel 函数说明语法LOOKUP 函数在向量或数组中查找值LOOKUP(lookup_va…

Linux-文件系统

1. 物理结构 计算机的存储硬件有很多,这里讲磁盘。 磁盘的物理结构大致分为: 磁盘(数据存储)磁头音圈马达主轴 所有的数据都存储在磁盘上,磁盘有很多片,每一个面都有对应的磁头来对数据进行更改 磁头是…

轻松处理文件名,告别重复命名烦恼!一键覆盖复制操作,让文件管理更高效!

我们每天都在与大量的文件打交道。从工作文档到生活照片,从学习资料到娱乐视频,每一个文件都承载着我们的记忆和辛勤付出。然而,随着文件数量的不断增加,文件名冲突、重复命名等问题也愈发突出,给我们的文件管理带来了…

Python:解析pyserial串口通讯

简介:串行接口简称串口,也称串行通信接口或串行通讯接口(通常指COM接口),是采用串行通信方式的扩展接口。串行接口 (Serial Interface)是指数据一位一位地顺序传送。其特点是通信线路简单&#…

DC-DC电源芯片规格书上的各种参数详解

1.输出电压精确度 输出电压的精确度,也被称为设定点精度,它描述了输出电压的允许误差。该参数通常是在常温,满载和额定输入电压的条件下测得的,它是这样定义的: 输出电压之所以产生误差,是因为元器件本身存在误差,特别是输出端的分压电阻,它将输出电压降低后比PWM比较…

【白盒测试】单元测试的理论基础及用例设计技术(6种)详解

目录 🌞前言 🏞️1. 单元测试的理论基础 🌊1.1 单元测试是什么 🌊1.2 单元测试的好处 🌊1.3 单元测试的要求 🌊1.4 测试框架-Junit4的介绍 🌊1.5 单元测试为什么要mock 🏞️…

BGP配置和应用案例

策略路由的配置步骤 l 策略路由的配置步骤如下: 创建route-map 通过ACL匹配感兴趣的数据,定义策略动作 在指定接口下通过ip policy 命令应用route-map l 最终实现对通过该接口进入设备的数据进行检查,对匹配的数据执行规定的策略…

pytest参数化数据驱动(数据库/execl/yaml)

常见的数据驱动 数据结构: 列表、字典、json串 文件: txt、csv、excel 数据库: 数据库链接 数据库提取 参数化: pytest.mark.parametrize() pytest.fixture()…

大语言模型在研究领域的应用——信息检索中的大语言模型

信息检索中的大语言模型 大语言模型提升信息检索任务利用大语言模型进行信息检索大语言模型增强的信息检索模型. 检索增强的大语言模型输入优化策略.指令微调策略.预训练策略. 总结应用建议未来方向 大语言模型对于传统信息检索技术与应用范式带来了重要影响。这两者在技术路径…

数字接龙(蓝桥杯)

文章目录 数字接龙【问题描述】解题思路DFS 数字接龙 【问题描述】 小蓝最近迷上了一款名为《数字接龙》的迷宫游戏,游戏在一个大小为N N 的格子棋盘上展开,其中每一个格子处都有着一个 0 . . . K − 1 之间的整数。游戏规则如下: 从左上…

游戏发行困境及OgGame云游戏解决方案简述

随着全球化浪潮的持续推进,中国游戏开发者们不再满足于国内市场的发展,而是开始将目光投向更为广阔的海外市场。这一趋势的崛起背后,是中国企业意识到国际化是其发展的必由之路,也是游戏行业突破国内困境的体现。本文将简要阐述游…

【线性代数 C++】求逆矩阵

对于 n n n阶矩阵 A A A,如果有 n n n阶矩阵 B B B,使 A B B A E ABBAE ABBAE,则说 A A A是可逆的,并把 B B B称为 A A A的逆矩阵. A A A的逆矩阵记作 A − 1 A^{-1} A−1,则 B A − 1 BA^{-1} BA−1.若 ∣ A ∣ ≠…

Recommended Azure Monitors

General This document describes the recommended Azure monitors which can be implemented in Azure cloud application subscriptions. SMT incident priority mapping The priority “Blocker” is mostly used by Developers to prioritize their tasks and its not a…

Hive-Sql复杂面试题

参考链接:hive sql面试题及答案 - 知乎 有哪些好的题目都可以给我哦 我来汇总到一起 1、编写sql实现每个用户截止到每月为止的最大单月访问次数和累计到该月的总访问次数 数据: userid,month,visits A,2015-01,5 A,2015-01,15 B,2015-01,5 A,2015-01,…

MySQL面试——聚簇/非聚簇索引

存储引擎是针对表结构,不是数据库 引擎层:对数据层以何种方式进行组织 update:加索引:行级锁;不加索引:表级锁

Java 网络编程之TCP(三):基于NIO实现服务端,BIO实现客户端

前面的文章,我们讲述了BIO的概念,以及编程模型,由于BIO中服务器端的一些阻塞的点,导致服务端对于每一个客户端连接,都要开辟一个线程来处理,导致资源浪费,效率低。 为此,Linux 内核…

Stable Diffusion WebUI 使用 VAE 增加滤镜效果

本文收录于《AI绘画从入门到精通》专栏,专栏总目录:点这里,订阅后可阅读专栏内所有文章。 大家好,我是水滴~~ 本文主要介绍 VAE 模型,主要内容有:VAE 模型的概念、如果下载 VAE 模型、如何安装 VAE 模型、如…

520提升幸福感的好物有哪些?5款必备产品推荐!

520作为年度表白节日,提醒人们别忘了在日常中向所爱之人表达浪漫。从鲜花、美酒到护肤品,礼物成为表达爱意的重要方式。然而,如何选购适合对方的礼物成为人们的难题。过去,关于“硬核520礼物”等话题热度不减,各种送礼…

MQ面试题

为什么要使用消息队列? 优点:解耦、异步、流量削峰 缺点:可用性降低、复杂性提高、一致性问题 为什么选择了RabbitMQ而不是其它的MQ? kafka是以吞吐量高而闻名,不过其数据稳定性一般,而且无法保证消息有…