你好,这里是网络技术联盟站。
今天给大家接收BGP相关的技术,本文着重要基础,图文并茂,更好的让读者理解生涩的术语,让我们直接开始!
BGP 路由器之间用于路由信息交换的连接使用 TCP 并执行确认、重传和排序,还可以对连接进行身份验证,交换的路由信息被赋予 AS-PATH(一种 BGP 属性,列出路由经过的自治系统),并且通过拒绝包含其自己的 AS 的路由,可以防止路由环路。
BGP可以跟踪路由波动来减少接口和路由上/下行事件对网络的影响,由于抖动而不稳定的路由会受到限制。
与 IGP 不同,BGP 可以容纳超过 100000 条路由,互联网上交换的路由数量逐年增加,截至2023年3月,已经超过93万条路由,可以通过查看CIDR 报告来了解互联网上当前的路由数量。
BGP 交换的路由伴随着称为路径属性的参数,可以根据这些属性定义路由策略,不同的组织往往需要不同的路由策略,实现IGP无法实现的策略控制。
自治系统 AS 是单个管理域(组织)下的网络集合,唯一编号分配给在 Internet 上交换路由的组织,并由Internet 注册机构IANA管理,AS内部的路由协议可以运行OSPF等IGP,AS之间的路由协议使用BGP。
AS 号用 16 位表示,范围从 1 到 65535,有公共和私有 AS 编号范围以及 IP 地址。
我们都知道,BGP使用的路径矢量算法来计算最佳路径的,那么什么是路径矢量算法呢?
BGP交换到达目标网络的AS信息作为路由信息。
如图,AS400的192.168.1.0/24网络到达AS100之前经过的AS为AS300和AS200,所以AS100中的路由信息为AS200-AS300-AS400
。
为了避免路由环路,如果收到的 AS 路径包含自己的 AS 号,路由器将拒绝接收路由信息。
它不必像 eBGP 那样是直接连接,如果 IGP 确保网络可达性,则可以建立对等体,iBGP 获悉的路由信息不会通告给 iBGP 对等方。
BGP 在 TCP 3 次握手完成后发送和接收以下消息:
以下是每条消息的说明:
发送的第一条消息,发送自己的 AS 编号、保持计时器和 BGP 标识符。
保持计时器是假设 BGP 对等体关闭的时间量,如果在该时间量内没有从 BGP 对等体收到诸如 KEEPALIVE 之类的消息,保持计时器到期后,它会关闭连接并使从该 BGP 对等体收到的所有路由无效。保持计时器默认值 90 秒,它还可以选择性地公布它支持的功能,例如支持 4 字节 AS 编号。
发送路径属性、NLRI等 也可以发送无效路由,在这种情况下,它们将从接收方的路由表中删除。
定期发送以防止保持计时器用完,合理的时间是保持计时器的 1/3(建议 30 秒)。
通知错误时发送,例如,当 hold timer 超时时,发送 NOTIFICATION 并终止 TCP 连接。
请求重传所有路由信息。
在BGP中,UPDATE发送的路由信息只要TCP连接没有变化就不会重发,这是因为既然是TCP,如果返回ACK,就可以理解为对方已经正常接收到数据,所以不会发生不必要的通信。
相反,如果 TCP 连接断开,则所有路由都将失效,因此会定期发送 KEEPALIVE,以使保持计时器不会超时。
本文主要给大家介绍了:
最后感谢您的阅读