BGP简介、BGP与IGP的区别、BGP的优势有哪些?

2023-11-08 23:59
文章标签 优势 区别 简介 bgp igp

本文主要是介绍BGP简介、BGP与IGP的区别、BGP的优势有哪些?,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

BGP的背景

 为方便管理规模不断扩大的网络,网络被分成了不同的AS(Autonomous System,自治系统)。

 早期,EGP(Exterior Gateway Protocol,外部网关协议)被用于实现在AS之间动态交换路由信息。但是EGP设计得比较简单,只发布网络可达的路由信息,而不对路由信息进行优选,同时也没有考虑环路避免等问题,很快就无法满足网络管理的要求。

 BGP(Border Gateway Protocol,边界网关协议)是为取代最初的EGP而设计的另一种外部网关协议。不同于最初的EGP,BGP能够进行路由选路避免路由环路更高效率的传递路由维护大量的路由信息

 BGP是一种实现自治系统AS之间的路由可达,并选择最佳路由的路径矢量路由协议(Path-Vector Routing Protocol)。

在这里插入图片描述

BGP的优势

相较于传统的IGP协议:

1、BGP使用TCP作为其传输层协议(端口号为179),使用触发式增量路由更新,而不是周期性路由更新。

 这一点就注定了BGP在运行商及公网环境下的地位会比IGP高,因为IGP协议路由更新之后可能会造成网络的波动,甚至可能影响正常业务的转发。

2、只传递路由信息,不会暴露AS内的拓扑信息。

3、BGP能够承载大批量的路由信息,能够支撑大规模网络。

 IGP协议均共用一个IGP路由表,而BGP单独使用一个BGP路由表,两表之间互不关联。

4、BGP提供了丰富的路由策略,能够灵活的进行路由选路,并能指导对等体按策略发布路由。

5、BGP能够支撑MPLS/VPN的应用,传递客户VPN路由。

6、BGP提供了路由聚合和路由衰减功能用于防止路由振荡,通过这两项功能有效地提高了网络稳定性。

总结:BGP更安全可靠、增量路由更新、支持超大型网络、具备更多的选路工具

IGP与BGP

BGP的建立与路由交互大致过程是怎样的?与IGP路由协议的邻居建立与交换路由过程有何区别?

1、BGP通过TCP报文建立邻居与发送路由信息,因为基于TCP建立邻居,所以只要两个路由器底层路由可达都有建立BGP邻居并交互路由。

2、BGP建立优先发起TCP建立连接,连接成功之后发送相关BGP报文请求建立BGP邻居,建立成功之后再发送BGP路由。

IGP协议通常都是完成邻居建立之前就已经交互完了路由信息,如OSPF建立完成邻接状态之后路由也完成了收敛。

而BGP是先建立好关系之后,再发送路由。因为BGP路由条目居多如果在建立过程中就发送路由,将会消耗大量时间在关系建立上。

如果要跨设备建立邻居的话,说明跨设备的底层路由已经打通了,那为何要在已经建立了底层IGP的网络上再建立一个BGP邻居呢?

1、论应用场景而定,如果是在企业内部网络部署IGP,的确已经足够。

2、但如果是运营商或一些大型网络中,路由条目较多,网络拓扑较为复杂的场景。使用IGP协议虽然可以运行,但网络拓扑发生细微变更将会导致整个网络拓扑变更,造成网络动荡,路由条目越多,收敛时间越慢。

3、而如果使用IGP为基础建立BGP邻居,相互学习BGP路由。当网络拓扑变更的时候,受到影响的设备只需要发送变更的路由条目发送给其它BGP邻居即可,稳定性显而易见。

BGP的基础名词

AS自治系统

 autonomous system,在互联网中,一个自治系统(AS)是一个有权自主地决定在本系统中应采用各种路由协议的小型单位。可理解为网络中的一个小帮派。

 不同AS通过AS号区分,AS号存在16bit、32bit两种表示方式。

在长度为16bit的AS号表示方式中:64512-65534为私有AS号。
在长度为32bit的AS号表示方式中:4200000000-4294967294为私有AS号。

 由IANA负责AS号的分发(同时它也是分发公网IP地址的那个组织)。

IANA的所有任务可以大致分为三个类型:
一、域名。IANA管理DNS域名根和.int,.arpa域名以及IDN(国际化域名)资源。
二、数字资源。IANA协调全球IP和AS(自治系统)号并将它们提供给各区域Internet注册机构。
三、协议分配。IANA与各标准化组织一同管理协议编号系统。

 当不同AS之间需要进行通信时,在AS之间使用BGP路由协议进行路由的传递。

BGP发言者(BGP Speaker)

 运行BGP的路由器都被称为BGP发言者或BGP路由器

BGP对等体(Peer)

 两个建立了BGP会话的路由器互为对等体,也称BGP邻居。

 BGP存在两种对等体关系类型:EBGP与IBGP对等关系

 1、EBGP(External BGP):位于不同自治系统的BGP对等体关系。

 2、IBGP(Internal BGP):位于相同自治系统的BGP对等体关系。

BGP路径属性(Path attribute)

 每条BGP路由都携带多种路径属性,BGP可以通过这些路径属性控制路径选择,而不像IS-IS、OSPF只能通过Cost控制路径选择,因此在路径选择上,BGP具有丰富的可操作性,可以在不同场景下选择最合适的路径控制方式。
在这里插入图片描述

更多相关笔记,观看CSDN:HCIA~HCIE个人笔记

这篇关于BGP简介、BGP与IGP的区别、BGP的优势有哪些?的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

Spring Security简介、使用与最佳实践

《SpringSecurity简介、使用与最佳实践》SpringSecurity是一个能够为基于Spring的企业应用系统提供声明式的安全访问控制解决方案的安全框架,本文给大家介绍SpringSec... 目录一、如何理解 Spring Security?—— 核心思想二、如何在 Java 项目中使用?——

Vue和React受控组件的区别小结

《Vue和React受控组件的区别小结》本文主要介绍了Vue和React受控组件的区别小结,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学... 目录背景React 的实现vue3 的实现写法一:直接修改事件参数写法二:通过ref引用 DOMVu

Java Stream 并行流简介、使用与注意事项小结

《JavaStream并行流简介、使用与注意事项小结》Java8并行流基于StreamAPI,利用多核CPU提升计算密集型任务效率,但需注意线程安全、顺序不确定及线程池管理,可通过自定义线程池与C... 目录1. 并行流简介​特点:​2. 并行流的简单使用​示例:并行流的基本使用​3. 配合自定义线程池​示

Go之errors.New和fmt.Errorf 的区别小结

《Go之errors.New和fmt.Errorf的区别小结》本文主要介绍了Go之errors.New和fmt.Errorf的区别,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考... 目录error的基本用法1. 获取错误信息2. 在条件判断中使用基本区别1.函数签名2.使用场景详细对

PostgreSQL简介及实战应用

《PostgreSQL简介及实战应用》PostgreSQL是一种功能强大的开源关系型数据库管理系统,以其稳定性、高性能、扩展性和复杂查询能力在众多项目中得到广泛应用,本文将从基础概念讲起,逐步深入到高... 目录前言1. PostgreSQL基础1.1 PostgreSQL简介1.2 基础语法1.3 数据库

Redis中哨兵机制和集群的区别及说明

《Redis中哨兵机制和集群的区别及说明》Redis哨兵通过主从复制实现高可用,适用于中小规模数据;集群采用分布式分片,支持动态扩展,适合大规模数据,哨兵管理简单但扩展性弱,集群性能更强但架构复杂,根... 目录一、架构设计与节点角色1. 哨兵机制(Sentinel)2. 集群(Cluster)二、数据分片

Python库 Django 的简介、安装、用法入门教程

《Python库Django的简介、安装、用法入门教程》Django是Python最流行的Web框架之一,它帮助开发者快速、高效地构建功能强大的Web应用程序,接下来我们将从简介、安装到用法详解,... 目录一、Django 简介 二、Django 的安装教程 1. 创建虚拟环境2. 安装Django三、创

一文带你迅速搞懂路由器/交换机/光猫三者概念区别

《一文带你迅速搞懂路由器/交换机/光猫三者概念区别》讨论网络设备时,常提及路由器、交换机及光猫等词汇,日常生活、工作中,这些设备至关重要,居家上网、企业内部沟通乃至互联网冲浪皆无法脱离其影响力,本文将... 当谈论网络设备时,我们常常会听到路由器、交换机和光猫这几个名词。它们是构建现代网络基础设施的关键组成

redis和redission分布式锁原理及区别说明

《redis和redission分布式锁原理及区别说明》文章对比了synchronized、乐观锁、Redis分布式锁及Redission锁的原理与区别,指出在集群环境下synchronized失效,... 目录Redis和redission分布式锁原理及区别1、有的同伴想到了synchronized关键字

MySQL 索引简介及常见的索引类型有哪些

《MySQL索引简介及常见的索引类型有哪些》MySQL索引是加速数据检索的特殊结构,用于存储列值与位置信息,常见的索引类型包括:主键索引、唯一索引、普通索引、复合索引、全文索引和空间索引等,本文介绍... 目录什么是 mysql 的索引?常见的索引类型有哪些?总结性回答详细解释1. MySQL 索引的概念2