来源:网络技术联盟站
链接:https://www.wljslmz.cn/20118.html
你好,这里是网络技术联盟站。
今天给大家接收BGP相关的技术,本文着重要基础,图文并茂,更好的让读者理解生涩的术语,让我们直接开始!
一、什么是 BGP?
-
英文全称:Border Gateway Protocol -
中文名称:边界网关协议 -
一种动态路由协议 -
在 RFC4271 中定义
二、BGP特点
2.1 可靠性
BGP 路由器之间用于路由信息交换的连接使用 TCP 并执行确认、重传和排序,还可以对连接进行身份验证,交换的路由信息被赋予 AS-PATH(一种 BGP 属性,列出路由经过的自治系统),并且通过拒绝包含其自己的 AS 的路由,可以防止路由环路。
2.2 稳定性
BGP可以跟踪路由波动来减少接口和路由上/下行事件对网络的影响,由于抖动而不稳定的路由会受到限制。
2.3 可扩展性
与 IGP 不同,BGP 可以容纳超过 100000 条路由,互联网上交换的路由数量逐年增加,截至2023年3月,已经超过93万条路由,可以通过查看CIDR 报告来了解互联网上当前的路由数量。

2.4 灵活性
BGP 交换的路由伴随着称为路径属性的参数,可以根据这些属性定义路由策略,不同的组织往往需要不同的路由策略,实现IGP无法实现的策略控制。
三、BGP自治系统
自治系统 AS 是单个管理域(组织)下的网络集合,唯一编号分配给在 Internet 上交换路由的组织,并由Internet 注册机构IANA管理,AS内部的路由协议可以运行OSPF等IGP,AS之间的路由协议使用BGP。

AS 号用 16 位表示,范围从 1 到 65535,有公共和私有 AS 编号范围以及 IP 地址。
-
全球AS号:1~64511 -
私有AS号:64512-65535
四、路径矢量算法
我们都知道,BGP使用的路径矢量算法来计算最佳路径的,那么什么是路径矢量算法呢?
BGP交换到达目标网络的AS信息作为路由信息。

如图,AS400的192.168.1.0/24网络到达AS100之前经过的AS为AS300和AS200,所以AS100中的路由信息为AS200-AS300-AS400
。
为了避免路由环路,如果收到的 AS 路径包含自己的 AS 号,路由器将拒绝接收路由信息。
五、内部BGP和外部BGP
-
外部 BGP (eBGP):用于不同 AS 中的对等体之间。建立对等体的路由器的接口必须直连(同一网络),但是,可以通过使用 eBGP 多跳来避免。
-
内部 BGP (iBGP):在属于同一 AS 的对等体之间使用。
它不必像 eBGP 那样是直接连接,如果 IGP 确保网络可达性,则可以建立对等体,iBGP 获悉的路由信息不会通告给 iBGP 对等方。

六、BGP 消息
BGP 在 TCP 3 次握手完成后发送和接收以下消息:

以下是每条消息的说明:
6.1 打开
发送的第一条消息,发送自己的 AS 编号、保持计时器和 BGP 标识符。
保持计时器是假设 BGP 对等体关闭的时间量,如果在该时间量内没有从 BGP 对等体收到诸如 KEEPALIVE 之类的消息,保持计时器到期后,它会关闭连接并使从该 BGP 对等体收到的所有路由无效。保持计时器默认值 90 秒,它还可以选择性地公布它支持的功能,例如支持 4 字节 AS 编号。
6.2 更新
发送路径属性、NLRI等 也可以发送无效路由,在这种情况下,它们将从接收方的路由表中删除。
6.3 保活
定期发送以防止保持计时器用完,合理的时间是保持计时器的 1/3(建议 30 秒)。
6.4 通知
通知错误时发送,例如,当 hold timer 超时时,发送 NOTIFICATION 并终止 TCP 连接。
6.5 路线刷新
请求重传所有路由信息。
在BGP中,UPDATE发送的路由信息只要TCP连接没有变化就不会重发,这是因为既然是TCP,如果返回ACK,就可以理解为对方已经正常接收到数据,所以不会发生不必要的通信。
相反,如果 TCP 连接断开,则所有路由都将失效,因此会定期发送 KEEPALIVE,以使保持计时器不会超时。
七、总结
本文主要给大家介绍了:
-
什么是 BGP? -
BGP特点 -
可靠性 -
稳定性 -
可扩展性 -
灵活性 -
BGP自治系统 -
路径矢量算法 -
内部BGP和外部BGP -
BGP 消息 -
打开 -
更新 -
保活 -
通知 -
路线刷新
最后感谢您的阅读,如果本文对您有所帮助,可以收藏并转发给您的朋友,有任何问题欢迎在下方评论区与我讨论!
原创文章,作者:网络技术联盟站,如若转载,请注明出处:https://www.sudun.com/ask/34803.html