基于之前的笔记,由 anthropic-claude-opus-4.5 重构
概述
ACI Fabric 的控制平面由三种核心协议构成,它们分工明确:
- ISIS:负责 Underlay 路由,建立 VTEP 间的可达性
- COOP:负责终端(Endpoint)信息同步,例如 MAC 和 IP 地址的学习
- MP-BGP:负责 L3Out 外部路由的传递

1. 协议职责对比
| 协议 |
主要用途 |
运行位置 |
传递内容 |
| ISIS |
Underlay 路由 |
L3 子接口(Leaf-Spine 间) |
TEP IP 可达性 |
| COOP |
EP 数据库同步 |
PTEP Loopback |
MAC/IP 映射 |
| MP-BGP |
L3Out 路由 |
PTEP Loopback |
VPNv4/v6 路由 |
关键区别:与传统 VXLAN EVPN 架构不同,ACI 不使用 BGP Type-2 或 Type-5 路由来传递 MAC/IP 信息。为什么ACI要另辟蹊径?这是因为其采用了专有的 COOP 协议来实现终端信息的同步。
2. Fabric 基础架构分层
2.1 北向基础架构(North-bound Infra)
方向:Leaf → Spine
组成:Leaf 和 Spine 交换机
特点:
- Leaf 与 Spine 之间使用 L3 子接口 进行互联
- ISIS 协议运行在这些子接口上,负责维护基础架构的可达性
- COOP 协议运行在 PTEP Loopback 接口上,用于同步终端数据库
- MP-BGP 同样运行在 PTEP Loopback 接口上,负责同步 L3Out 路由
- 由此建立 iVXLAN 隧道,连接至其他 Leaf 的 PTEP 以及 Spine 的 Proxy TEP
2.2 南向基础架构(South-bound Infra)
方向:Leaf → APIC/外部 VTEP
组成:Leaf 交换机、外部 VTEP 设备、APIC 控制器
特点:
- Leaf 与 VTEP 或 APIC 控制器之间通常被假定为 L2 邻接 关系
- 通过硬件学习或 ARP 发现机制来识别这些节点
- ISIS 协议会将这些节点的地址重分发到 Fabric 的其余部分(overlay-1 路由域)
- 最终建立 VXLAN 隧道连接至外部 VTEP
3. ISIS 在 ACI 中的详细作用
3.1 核心功能
- 交换 TEP 路由信息
- 在 Spine 和 Leaf 之间交换基础设施(overlay-1)路由信息
- 通过 ISIS LSP(链路状态协议数据单元)泛洪至所有节点
- 动态 TEP 管理
- 感知节点的上线与下线状态
- 同步 VPC(虚拟端口通道)配置的变更
3.2 用户可配置项
ISIS 的大部分配置由 ACI 系统自动管理,仅有少量参数可供管理员调整:
| 参数 |
说明 |
默认值 |
| ISIS MTU |
LSP 报文的 MTU 大小 |
1492 |
| ISIS Metric |
重分发路由时使用的度量值 |
- |
配置路径:
Fabric → Fabric Policies → Policies → ISIS Policy → default
对应 MO:isisDomPol
3.3 MTU 注意事项
⚠️ 重要:物理接口的 MTU 值必须大于 ISIS LSP 的 MTU(默认 1492)。如果接口 MTU 设置过小,可能导致 LSP 报文无法正常传递,从而引发路由异常。
3.4 验证方法
GUI 路径:
Fabric → Inventory → Pod X → [leaf/spine] → Protocols → ISIS
CLI 命令:
show bgp process vrf overlay-1 # 查看 BGP 进程信息
4. 要点小结
- ISIS 是 ACI Fabric 的 Underlay 基础,所有 VTEP 之间的可达性都依赖于它。
- COOP 是 ACI 特有的终端同步机制,它使用 ZMQ(基于可靠的 TCP 连接)进行传输。
- MP-BGP 仅用于传递 L3Out 的业务路由,不参与 MAC 或 IP 地址的学习过程。
- 北向连接(Leaf-Spine)使用 L3 子接口,而南向连接(Leaf-APIC)则基于 L2 邻接。
- 配置时必须确保 ISIS MTU 小于物理接口的 MTU,以避免协议报文被丢弃。
📝 补充说明
ZMQ(ZeroMQ):一种高性能的异步消息库。COOP 协议利用它在 Leaf 和 Spine 之间建立可靠的 TCP 连接,用于传输终端信息。
PTEP(Physical TEP):指节点的物理隧道端点地址,用于建立 VXLAN 或 iVXLAN 隧道。
想了解更多网络架构与协议细节,欢迎访问云栈社区进行深入探讨。
|