Nexus 9000 Cloud Scale 交换芯片架构与转发流水线复习指南
发布时间:2026/10/16 14:02:36 锦皓数字建站

简介这份PDF资料源自思科Live技术讲座BRKARC-3222由杰出工程师Tim Stevenson主讲面向数据中心网络工程师、架构师及备考思科认证的技术人员系统讲解Nexus 9000系列模块化与TOR交换机的芯片级架构。内容围绕数据中心与硅策略、云规模架构、云规模ASIC、转发特性、交换平台及Packet Walks等模块展开深入剖析X9400/X9600-R等型号所采用的Broadcom XGS与DNX芯片方案以及Cisco自研Cloud Scale ASIC在智能缓存、流式遥测、单遍隧道封装与加密技术上的差异化设计。资源包为1个PDF文件大小约3.56MB便于离线阅读与归档查阅。目前已有283人学习下载。读者可借此理解数据包在交换机内部的完整转发路径掌握硬件QoS、拥塞管理、VXLAN支持等关键能力为高性能数据中心网络的选型、优化与故障排查提供扎实的底层依据。1. 数据中心交换芯片的体系地图从 Cloud Scale 到转发流水线很多人复习数据中心交换这块内容时容易把它当成一堆型号参数的堆砌——什么 9500、9300、EX、FX、FX2背完就忘。但真正梳理下来会发现Nexus 9000 这一代的核心逻辑其实只有一条主线用自研 Cloud Scale ASIC 替代商用硅把转发能力做成可裁剪、可编程的切片结构。围绕这条主线才衍生出 Flex Tile、Slice、智能缓存、遥测这些具体机制。这份笔记面向的是正在系统学习数据中心网络、或者备考相关认证的人。它不覆盖第一代 Nexus 9000 的 ASIC 架构也不涉及商用 Broadcom 芯片方案X9400/X9600-R 系列聚焦的是 Cloud Scale 家族——LSE、LS1800FX、S6400、LS3600FX2 这几款芯片以及它们对应的 X9700-EX/FX 模块化线卡和 9300-EX/FX/FX2 机架顶部交换机。整份地图可以拆成四层芯片家族与切片架构、转发流水线与 Flex Tile、关键转发功能IP 单播、ECMP、隧道、以及数据包在芯片内部的完整行走路径。把这四层串起来复习就不会散。2. Cloud Scale 芯片家族与 Slice 架构先搞清芯片怎么切2.1 四款 Cloud Scale ASIC 的定位与差异Cloud Scale 家族目前有四款芯片它们的区别不只是端口数和带宽更关键的是切片数量、是否带 MACSEC/CloudSec、以及是否支持 SSX 流统计导出。复习时如果只记带宽数字遇到“为什么 FX2 支持 CloudSec 而 FX 不支持”这类问题就会卡住。芯片型号总带宽切片结构加密能力典型平台LSE1.8T2 切片 × 9×100G无X9700-EX 线卡、9300-EXLS1800FX1.8T1 切片 × 18×100GMACSECX9700-FX 线卡、9300-FXS64006.4T4 切片 × 16×100G无9364C、E2 交换模块LS3600FX23.6T2 切片 × 18×100GMACSEC CloudSec9300-FX2梳理下来会发现一个规律切片数量决定了芯片内部并行转发的粒度。LSE 是 2 切片各 900GS6400 是 4 切片各 1.6TLS3600FX2 是 2 切片各 1.8T。切片之间通过 Slice Interconnect 做非阻塞任意互联这意味着任何一个切片的入方向都能到达所有切片的出方向。这个设计的好处是当某个切片对应的端口出现拥塞时流量可以被调度到其他切片的出方向缓冲而不是死等。注意LS1800FX 只有 1 个切片所以它没有切片间互联的需求但代价是内部并行的灵活度不如多切片芯片。复习时容易把 LS1800FX 和 LS3600FX2 搞混——前者是单切片 18×100G后者是双切片 36×100G且多了 CloudSec。2.2 Slice 内部结构Ingress 与 Egress 的分工每个 Slice 是一个自包含的转发复合体控制芯片上一部分端口。它内部分成 Ingress入方向和 Egress出方向两个功能块中间通过 Slice Interconnect 连接。Ingress 负责包解析、查表、负载均衡决策Egress 负责缓冲、队列调度、复制、重写和策略执行。这个分工带来的一个关键复习点是入方向的查表结果决定了包去哪个出切片。如果查表结果是 ECMP 组负载均衡和 AFD/DPP 的决策在 Ingress 侧完成如果查表结果是单播邻接指针包直接送到对应出切片的 Egress 缓冲。理解这一点后面看 Packet Walk 时就不会迷路。2.3 为什么自研芯片值得单独复习自研 ASIC 的动机不是“为了自研而自研”而是为了把硬件设计和软件创新绑在一起。具体体现在几个能力上ACI 策略模型和拥塞感知的 flowlet 切换需要硬件支持灵活的转发模板单次隧道封装single-pass tunnel encapsulation要求芯片在入方向就完成 VXLAN 等封装而不是绕一圈MACSEC 和 CloudSec 加密是内置的不依赖外挂芯片智能缓冲DBP/AFD/DPP和流表遥测Flow Table、SSX也是芯片级特性。复习时可以把这些能力归成三类转发灵活性Flex Tile、隧道、流量管理智能缓冲、flowlet、可观测性流表、SSX。这三类正好对应后面章节要展开的重点。3. 转发流水线与 Flex Tile查表到底怎么查3.1 Ingress 转发控制器的完整流程Ingress Forwarding Controller 是查表的核心。包从 Ingress MAC 进来后先经过 Packet Parser 解析然后进入 Ingress Lookup Pipeline。这个流水线里有两个关键组件TCAM和Flex Tiles。TCAM 负责处理溢出和哈希冲突Flex Tiles 提供可灵活分配的查表条目池。查表的大致顺序是先做 Ingress Classification分类然后做 Forwarding Lookup转发查表查表结果经过 Load Balancing 和 AFD/DPP 决策后送到 Egress Slice。LSE、LS1800FX、LS3600FX2 还额外支持 Flow Table用于流级别的统计和遥测。这里最容易忽略的是TCAM Flush机制。当 Flex Tile 的条目需要重新分配时TCAM 里的相关条目会被刷新这个过程可能影响瞬时的查表性能。复习时如果只记“TCAM 处理溢出”遇到“TCAM Flush 对转发有什么影响”就答不上来。3.2 Flex Tile 的功能与路由模板Flex Tile 是 Cloud Scale 架构里最值得花时间理解的概念。它本质上是一个可 fungible 的查表条目池——不同 ASIC 的 Tile 数量和每个 Tile 的条目数不同但功能是可以按模板配置的。一个 Flex Tile 可以承载以下任意一种功能IPv4/IPv6 单播最长前缀匹配LPMIPv4/IPv6 单播主机路由表HRTIPv4/IPv6 组播(*,G)和(S,G)MAC 地址表 / 邻接表ECMP 表ACI 策略路由模板通过system routing template命令配置在系统初始化时定义更改模板需要重启。截至 NX-OS 7.0(3)I7(2)可用的模板包括模板名称适用场景限制Default通用场景无Dual-stack host scale双栈主机路由多不支持 IP 组播模块化 9500 不支持Internet peering互联网对等不支持 IP 组播LPM heavy大量前缀路由无MPLS heavyMPLS 场景不支持 IP 组播Multicast heavy组播密集无Multicast NBM组播 NBMTOR 不支持提示模板选择是“一次性决策”选错了只能重启改。复习时建议把每个模板的限制条件单独列出来记因为考试和实际排障都爱考“这个模板能不能用在 9500 上”“能不能支持组播”这类问题。3.3 IP 单播转发的查表链路IP 单播转发的查表逻辑可以用一条链串起来收到包后先做 Router MAC 查表判断目的 MAC 是不是路由器 MAC。如果是触发 L3 查表。硬件对 VRF 做精确匹配对目的 IP 做最长匹配。查表结果返回两种指针之一邻接指针ADJ_PTR或ECMP 指针ECMP_PTR。如果是 ADJ_PTR去 MAC 表查出输出 BD、重写 MAC 和输出端口。如果是 ECMP_PTR去 ECMP 表选出 ECMP 组再回到 MAC 表拿最终转发信息。这个链路里HRT 和 LPM 的分工是重点HRT 是哈希表用于 IPv4 /32 和 IPv6 /128 的主机条目LPM 是传统前缀/掩码条目或者用 pivot trie tile 的组合处理其他前缀长度。两者都从 Flex Tile 分配资源TCAM 兜底处理溢出和哈希冲突。复习时容易混淆的是HRT 和 LPM 不是二选一而是配合使用。主机路由走 HRT 是为了查得快非主机前缀走 LPM 是为了支持任意掩码长度。如果只记“HRT 是主机表、LPM 是前缀表”遇到“为什么需要两种表”就说不清。4. 关键转发功能ECMP、隧道与智能缓冲的复习重点4.1 ECMP 与负载均衡的硬件实现ECMP 在 Cloud Scale 里的实现和传统平台有一个明显区别ECMP 指针是在 Ingress 查表阶段就返回的而不是等到 Egress 再决定。这意味着负载均衡的决策更早发生配合 AFDApproximate Fair Dropping和 DPPDynamic Packet Prioritization可以在入方向就完成拥塞感知的调度。AFD 的作用是近似公平丢弃——当某个出端口拥塞时不是简单尾丢弃而是按流的大小做概率性丢弃避免大流饿死小流。DPP 则是动态包优先级对延迟敏感的包比如存储流量给更高优先级。这两个机制加上 DBP动态缓冲池构成了 Cloud Scale 的智能缓冲体系。复习时可以把这三个缩写的全称和各自解决的问题列成一张小表缩写全称解决的问题DBPDynamic Buffer Pool缓冲池按需动态分配避免静态分区浪费AFDApproximate Fair Dropping拥塞时按流公平丢弃防止大流霸占缓冲DPPDynamic Packet Prioritization对延迟敏感流量动态提优先级4.2 单次隧道封装与 VXLAN 路由Cloud Scale 支持 single-pass tunnel encapsulation意思是 VXLAN 等隧道的封装在入方向一次完成不需要包在芯片内部绕两圈。这对 VXLAN 路由场景很关键当包需要从一个 VXLAN 网络路由到另一个 VXLAN 网络时芯片在入方向就完成内层查表、外层封装和重写然后直接送到出方向。ACI 策略模型和 flowlet 切换也依赖这个能力。Flowlet 切换的核心是当一条流的包间隔超过阈值时允许它切换到另一条 ECMP 路径从而在保持包序的同时利用多路径带宽。这个决策需要硬件在入方向快速判断软件实现会有延迟。4.3 遥测与流表SSX 和 Flow Table 的区别遥测能力是 Cloud Scale 的一个差异化点但复习时容易把几个概念混在一起。Flow Table 是 LSE、LS1800FX、LS3600FX2 支持的流级别表项用于 Tetration Analytics 的流表事件通知。SSXStreaming Statistics Export是 S6400 和 LS3600FX2 才支持的流统计导出。两者不是一回事Flow Table 侧重流表事件SSX 侧重统计数据导出。注意如果你在复习时看到“哪些芯片支持 SSX”这类问题答案只有 S6400 和 LS3600FX2。LSE 和 LS1800FX 不支持 SSX但支持 Flow Table。这个区别在平台选型时很关键。5. 易漏点与易错点复习时最容易翻车的五个地方5.1 易漏点一Slice 数量与端口数的对应关系为什么漏很多人只记芯片总带宽不记切片结构导致遇到“LSE 为什么是 2 切片而不是 1 切片”时无法解释。怎么补把每款芯片的切片数、每切片端口数、切片间互联方式列成一张表反复对照。LSE 是 2×9×100GLS1800FX 是 1×18×100GS6400 是 4×16×100GLS3600FX2 是 2×18×100G。切片数决定了内部并行的粒度也决定了拥塞时能否跨切片调度。5.2 易漏点二路由模板的适用平台限制为什么漏模板名称看起来通用但 Dual-stack host scale 不支持模块化 9500Multicast NBM 不支持 TOR。这些限制散落在备注里不专门整理就会漏。怎么补把模板和限制做成对照表每次复习时先看限制列。特别是“不支持 IP 组播”这个限制出现在多个模板上容易记混。5.3 易错点三HRT 和 LPM 的分工为什么错容易把 HRT 和 LPM 当成互斥的两种模式实际上它们是配合关系。HRT 处理 /32 和 /128 主机条目LPM 处理其他前缀长度TCAM 兜底溢出。怎么补用一条查表链路图来记Router MAC 查表 → L3 查表VRF 精确匹配 IPDA 最长匹配→ 返回 ADJ_PTR 或 ECMP_PTR → MAC 表 / ECMP 表。HRT 和 LPM 都在 L3 查表这一步只是处理的前缀长度不同。5.4 易错点四Flow Table 和 SSX 的支持范围为什么错两个都是遥测相关但支持的芯片不同。Flow Table 支持 LSE、LS1800FX、LS3600FX2SSX 只支持 S6400 和 LS3600FX2。怎么补记一个交集——LS3600FX2 两个都支持S6400 只支持 SSXLSE 和 LS1800FX 只支持 Flow Table。这样记比单独背两个列表更省力。5.5 易漏点五TCAM Flush 的影响为什么漏TCAM 通常只被记成“处理溢出”但 TCAM Flush 是 Flex Tile 重新分配时的副作用可能影响瞬时查表性能。怎么补把 TCAM Flush 和 Flex Tile 重分配放在一起理解。当模板变更或 Tile 资源调整时TCAM 里的相关条目需要刷新这个过程中查表可能走慢路径。复习时如果遇到“模板变更对转发的影响”除了重启还要想到 TCAM Flush。6. 查漏补缺一份可执行的复习清单复习到最后最怕的是“感觉都看过但一考就懵”。下面这份清单是按模块整理的每个条目都是一个可以自测的问题。你可以拿它当检查表过一遍卡住的地方就是需要回头补的。芯片家族与切片四款 Cloud Scale ASIC 的带宽、切片数、加密能力分别是什么LS1800FX 和 LS3600FX2 的核心区别在哪Slice Interconnect 的作用是什么为什么需要非阻塞互联Ingress 和 Egress 各自负责哪些功能Flex Tile 与路由模板Flex Tile 可以承载哪些功能至少说出五种。system routing template命令在什么时候生效更改后需要什么操作Dual-stack host scale 模板有哪些限制Multicast NBM 模板为什么不能在 TOR 上使用转发流水线IP 单播查表的完整链路是什么从 Router MAC 查表到最终转发信息。HRT 和 LPM 分别处理什么前缀长度TCAM 在其中扮演什么角色ADJ_PTR 和 ECMP_PTR 的区别是什么各自后续查哪张表关键功能与遥测AFD、DPP、DBP 各自解决什么问题Single-pass tunnel encapsulation 对 VXLAN 路由意味着什么Flow Table 和 SSX 分别支持哪些芯片Flowlet 切换的触发条件是什么Packet Walk一个包从入端口到出端口经过哪些主要阶段查表结果在哪个阶段决定出切片如果出端口拥塞智能缓冲在哪个阶段介入这份清单不需要一次全过可以分两轮第一轮按模块过标记卡住的条目第二轮只过标记的条目直到能不看资料说清楚。我自己的习惯是每次复习完一个模块就合上资料把该模块的清单问题自问一遍说不顺的地方立刻回查。这个习惯帮我避开了很多“以为会了其实没会”的坑。希望这份笔记能帮你把 Nexus 9000 Cloud Scale 的体系串起来复习时少走弯路。本文还有配套的精品资源点击获取
锦
锦皓数字建站
深耕本土企业品牌数字化升级,专注原创端正雅致商务官网,从视觉设计到稳定运维全程保驾护航。