10. 多 AS 骨干网
10. 多 AS 骨干网 (Multi-AS Backbones)
如果一个 VPN 的两个 sites 连接到不同的 Autonomous Systems (例如, 因为这些 sites 连接到不同的 SPs), 会怎样? 连接到该 VPN 的 PE routers 将无法彼此维护 IBGP connections, 也无法与共同的 route reflector 维护 IBGP connections. 因此, 需要某种方法使用 EBGP 来分发 VPN-IPv4 addresses.
处理这种情况有多种不同方法, 下面按可扩展性递增的顺序介绍.
a) 在 AS (Autonomous System) border routers 处建立 VRF-to-VRF connections.
在此过程中, 一个 AS 中的 PE router 直接连接到另一个 AS 中的 PE router. 这两个 PE routers 将通过多个 sub-interfaces 连接, 对于每个需要在 AS 之间传递 routes 的 VPN, 至少有一个 sub-interface. 每个 PE 都将另一个 PE 视为 CE router. 也就是说, PEs 将每个这样的 sub-interface 与一个 VRF 关联, 并使用 EBGP 彼此分发 unlabeled IPv4 addresses.
这是一个 "直接可用" 的过程, 并且不要求 ASes 之间的边界支持 MPLS. 不过, 它的可扩展性不如下面讨论的其他过程.
b) 通过 EBGP 将 labeled VPN-IPv4 routes 从一个 AS 重分发到相邻 AS.
在此过程中, PE routers 使用 IBGP 将 labeled VPN-IPv4 routes 重分发给 Autonomous System Border Router (ASBR), 或者重分发给某个 route reflector, 且 ASBR 是该 route reflector 的 client. 然后 ASBR 使用 EBGP 将这些 labeled VPN-IPv4 routes 重分发给另一个 AS 中的 ASBR, 后者再将它们分发给该 AS 中的 PE routers, 或者可能分发给另一个 ASBR, 由其继续分发, 依此类推.
使用此过程时, VPN-IPv4 routes 只应在 private peering points 处的 EBGP connections 上被接受, 作为 SPs 之间可信安排的一部分. 不应向 public Internet 分发 VPN-IPv4 routes, 也不应从 public Internet 接受 VPN-IPv4 routes; 对于任何不可信的 BGP peers 也同样如此. 除非 ASBR 确实已向某个 EBGP peer 分发了 top label, 否则它绝不应从该 peer 接受 labeled packet.
如果许多 VPNs 的 sites 连接到不同的 Autonomous Systems, 则这两个 ASes 之间不需要由单个 ASBR 保存所有 VPNs 的全部 routes; 可以有多个 ASBRs, 每个 ASBR 只保存某个 VPN 子集的 routes.
此过程要求存在一条从 packet 的 ingress PE 通向其 egress PE 的 label switched path. 因此, 路径沿线的一组 ASes 之间及其内部必须存在适当的信任关系. 此外, 这些 SPs 必须就哪些 border routers 需要接收带有哪些 Route Targets 的 routes 达成一致.
c) 在源 AS 与目的 AS 之间通过 multi-hop EBGP 重分发 labeled VPN-IPv4 routes, 并通过 EBGP 将 labeled IPv4 routes 从一个 AS 重分发到相邻 AS.
在此过程中, ASBRs 既不维护也不分发 VPN-IPv4 routes. ASBR 必须维护指向其 AS 内 PE routers 的 labeled IPv4 /32 routes. 它使用 EBGP 将这些 routes 分发到其他 ASes. 任何 transit ASes 中的 ASBRs 也必须使用 EBGP 继续传递这些 labeled /32 routes. 这样会创建一条从 ingress PE router 到 egress PE router 的 label switched path. 此时, 不同 ASes 中的 PE routers 可以彼此建立 multi-hop EBGP connections, 并在这些 connections 上交换 VPN-IPv4 routes.
如果 PE routers 的 /32 routes 被告知每个 AS 的 P routers, 一切将正常工作. 如果 PE routers 的 /32 routes 没有被告知 P routers (ASBRs 除外), 则此过程要求 packet 的 ingress PE 为其放置一个 three-label stack. bottom label 由 egress PE 分配, 对应于 packet 在特定 VRF 中的 destination address. middle label 由 ASBR 分配, 对应于通向 egress PE 的 /32 route. top label 由 ingress PE 的 IGP Next Hop 分配, 对应于通向 ASBR 的 /32 route.
为提升可扩展性, 可以让 multi-hop EBGP connections 只存在于一个 AS 中的 route reflector 与另一个 AS 中的 route reflector 之间. (但是, 当 route reflectors 在该 connection 上分发 routes 时, 它们不会修改这些 routes 的 BGP next hop attribute.) 这样, 实际的 PE routers 只需要与其自身 AS 中的 route reflectors 建立 IBGP connections.
此过程与 Section 9 中描述的 "carrier's carrier" 过程非常相似. 与前一种过程一样, 它要求存在一条从 packet 的 ingress PE 通向其 egress PE 的 label switched path.