缩写 BGP 代表边界网关协议。 它是一种所谓的路径矢量路由协议,Internet 的各种自治系统 (AS) 可以通过该协议相互连接,并且可以跨 AS 边界路由数据。
据报道,BGP 软件更新出错,导致 Facebook 中断。
边界网关协议可以跨 AS 使用。 在 AS 内,它通常与所谓的内部网关协议 (IGP) 一起使用,例如开放最短路径优先 (OSPF) 或中间系统到中间系统 (IS-IS)。
边界网关协议 (BGP) 是一种网络标准,用于在数据通过的自治系统之间建立逻辑连接路径。 BGP 的主要特性在 RFC 1163 中有描述。当前使用的版本是 BGPv4,它在 RFC 4271、4760 和 4364 等中定义。
边界网关协议不仅限于 IPv4 或 IPv6 的路由,还可以用于其他协议或 MPLS 标签。 BGP 旨在扩展和可靠。 这是一个很难启动和运行的路由机制,并且连接路径需要时间收敛。
边界网关协议如何工作?
边界网关协议基于路径向量工作。 为了传递路由信息,路由器之间建立了安全的 TCP 连接。 通过这些 BGP 会话发送和接收消息和信息。 为此使用的端口是 TCP 端口 179。可能的消息类型有:
- OPEN:开始会话内的信息交换
- KEEPALIVE:确认 OPEN 消息并保持会话。 会话通过来自连接路由器的常规 KEEPALIVE 消息保持活动状态
- 更新:通知路径更改
- 通知:用于终止连接和删除路径,例如,因为不再收到 KEEPALIVE 消息
UPDATE 消息在边界网关协议中起着核心作用。 路由器使用这些通知来发现新路由或在现有路由消失时收到通知。 路由器可以基于接收到的数据创建描绘自治系统网络的图。 生成图的过程不考虑循环,并注意更新中包含的那些路径的特征。 路由的可能属性有:
- AS_PATH:有关可以到达目标的 AS 的信息。 自治系统由 AS 编号表示
- Next Hop:到前缀的途中下一个中间节点的IP地址
- IGP 指标:有关通过自己网络的费用的信息
- 多出口鉴别器 (MED):用于优先考虑并行连接
- 路由标签或社区:32 位长值,可用于标记前缀以用于过滤目的
- 本地首选项:用于选择 AS 内的路径
- 来源:前缀的来源。 可能的值是内部、外部或不完整
EBGP和IBGP的区别
通过边界网关协议不仅可以连接不同的自治系统。 路由协议也可用于互连 AS 内的路由器。 根据用途,可以分为外部或内部 BGP(EBGP 或 IBGP)。
数据通过自治系统通过连接到 IBGP 的 AS 的路由器进行定向。 为此,路由器在其自己的 AS 内传播通过 EBGP 获知的路由。 这使得传输前缀的 BGP 特定属性成为可能。 BGP 会话必须在所有使用边界网关协议进行通信的路由器之间建立。
路由器之间的实际连接通常需要内部网关协议 (IGP),例如 OSPF(开放最短路径优先)或 IS-IS。 路由反射器是一种用于避免因大型网络中的完整网格而导致的扩展困难的方法。 每个 BGP 路由器只需要一个到路由反射器的连接,它会跟踪通过 EBGP 接收到的所有路由,并通过 IBGP 将它们分发到 AS 中的所有路由器。