问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

BGP协议深度解析:从背景到术语的全面梳理

创作时间:
作者:
@小白创作中心

BGP协议深度解析:从背景到术语的全面梳理

引用
CSDN
1.
https://blog.csdn.net/2401_86511216/article/details/146117957

在复杂的网络架构中,不同自治系统(AS)之间的路由交互至关重要。BGP(边界网关协议)作为自治系统间的动态路由协议,承担着跨 AS 路由传递的关键任务。本文将深入探讨 BGP 的产生背景、协议特性以及基本术语,帮助读者全面理解这一重要的网络协议。

1、BGP 产生背景

BGP 是一种用于自治系统间的动态路由协议,属于外部网关协议。

1.1、自治系统 AS

1.1.1、定义

一组由同一个管理机构进行管理,对外呈现统一选路策略的路由器的集合。

1.1.2、自治系统编号

2 字节 AS 编号:取值范围为 0 - 65535,其中 0 和 65535 保留。

  • 公有 AS:1 - 64511。

  • 私有 AS:64512 - 65535。

4 字节 AS 编号:拥有 2 的 32 次方的编号数量,满足更多的编号需求。

2、路由协议的分类

  • IGP(内部网关协议):包括 RIP、OSPF、IS - IS 等,主要用于自治系统内部的路由计算与传递。

  • EGP(外部网关协议):BGP 是目前广泛使用的外部网关协议,专注于自治系统间的路由处理。

3、BGP 协议特性

3.1、跨 AS 路由传递

BGP 只负责把路由从一个 AS 传到另一个 AS,从其他 AS 传递过来的路由在本 AS 内部的扩散依靠 IGP。

3.2、路径矢量协议特性

一跳代表一个自治系统。

当一条路由传入某个 AS,该路由的下一跳会变为上个 AS 的出接口的 IP 地址;

当一条路由在某个 AS 内部的路由器之间传递时,下一跳不变。

3.3、AS 防环机制

作为路径矢量路由协议,从设计上避免了环路的发生。

当一条路由每从一个 AS 传出,会把该 AS 的编号按照从右至左的顺序依次记录在AS_PATH属性中。

一个路由器从其他 AS 收到一条路由通告,会检查本路由器的 AS 标号是否出现在该路由条目的 AS_PATH 属性中,如果出现了则该条目不学习。

例如:一条路由从 AS 200 中的 R3 传出,其 AS_PATH = (300, 400, 500, 100, 200),当这条路由回传给 AS200 时,R4 会检查 AS_PATH,发现重复路径则不接收。

3.4、基于 TCP 传输

BGP 基于 TCP 协议传输,端口号为179,必须手动配置邻居

3.5、路由更新机制

BGP 第一次发送完整的路由表,后续只发送增量更新,减少网络传输负担。

3.6、丰富的路由控制属性

BGP 有多种属性可以控制路由选择,这也是 BGP 的难点所在。

3.7、对 CIDR 和路由聚合的支持

支持 CIDR(无类别域间路由)和路由聚合,有效优化路由表。

3.8、路由过滤和策略

具备路由过滤和路由策略功能,实现更精细的路由控制。

4、BGP 基本术语

4.1、BGP Speaker 与 BGP Peer

BGP Speaker

运行 BGP 协议的路由器称为 BGP 发言者。

BGP Peer

相互之间存在 TCP 连接、相互交换路由信息的 BGP 发言者之间互称为 BGP 对等体。

4.2、BGP 对等体类型

4.2.1、EBGP 对等体

跨 AS 之间的邻居,一般情况下 EBGP 对等体是物理上直连的。

BGP 发言者从 EBGP 对等体获得的路由会向它所有 BGP 对等体通告(包括 EBGP 和 IBGP)。

4.2.2、IBGP 对等体

同一个 AS 内部的邻居。

4.2.3、BGP 邻居非直连的情况

在实际网络中,可能存在 BGP 邻居非直连的场景。

此时需要思考三个问题:

(1)哪些路由器需要跑 BGP( R2、R3、R5、R6 )?

(2)以及这些路由器之间邻居关系如何建立( R2、R3、R5、R6 )?

(3)还有像 R3 - R4 之间,R6 - R7 之间路由如何传递等问题?

本文原文来自CSDN

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号