摘要
- LINX 表示,2023 年 6 月 20 日发生的一次暗光纤连接故障没有立即影响成员,但使 LON2 的冗余能力下降。一天后,网络出现 Flowmon 丢包信号、交换机间链路抖动、流量损失和对等互联局域网可达性问题。[1][2]
- LINX 披露,一台新安装、此前曾在实验室使用的路由器原本与另一台生产设备使用相同的 Router ID。旧的 OSPF 与 Router ID 配置虽然已被移除,新身份也已通过 NETCONF 下发,但未被清除的 OSPF 进程仍在使用旧身份。[1]
- 在残余可达性问题中,LINX 观察到 MAC 地址存在于边缘设备的软件 MAC 表,却没有进入硬件转发表。清除受影响 VTEP 之间的 L2VPN EVPN BGP 会话后,硬件表得到重新填充。[1]
- 这不是“配置错误”四个字可以概括的事件。配置数据库、协议进程、EVPN 控制平面和硬件数据平面分别保存不同层次的事实;任何单层成功都不能替代端到端转发证明。
- 6 月 29 日和 11 月 5 日的后续事件说明,症状复现不等于根因已经统一。公开证据支持讨论复发、软件回滚、光纤维护和持续中的厂商调查,却不足以证明所有事件都由同一个 Router ID、同一个软件缺陷或同一家厂商造成。[1]
- LINX 2023 年年报记录 LON2 可用性为 99.997%,低于其 99.998% 的内部目标。该指标能说明事件进入了运营可用性记录,却不能推出每个成员、每条路由或每笔业务的具体损失。[2]
- 可问责的生产准入机制应验证唯一的实时协议身份、已清除的历史进程状态、具有生产架构代表性的灰度路径、退化状态下的故障切换、EVPN 控制信息与硬件表的一致性,以及成员侧实际可达性。
- 最终证据不是“自动化任务成功”,也不是“配置已经提交”。最终证据是运行网络:身份唯一、邻接正确、VTEP 可达、控制状态一致、硬件表已编程、备用路径可用,且报文确实到达预期成员边缘。
一次没有立即中断流量的故障,已经改变了风险状态
这起事件最值得基础设施团队警惕的地方,不是某一个告警有多严重,而是系统在仍然能够转发流量时,已经进入了不同的风险状态。
LINX 的公开时序从 2023 年 6 月 20 日开始。当天,LON2 的一条暗光纤连接发生故障。LINX 表示,该故障没有立即对成员造成影响,但降低了网络韧性。[1] 这一区分必须保留:不能把第一次光纤故障写成已经造成成员中断,也不能因为当时业务仍能运行,就把它视为不重要的背景噪声。
冗余系统失去一条路径后,剩余网络仍可能保持连通,但它已经不再拥有名义架构所承诺的全部容错空间。此后发生的设备上线、链路变化、协议重收敛或软件状态异常,都必须在更窄的安全边界内处理。原本能够被另一条独立路径吸收的扰动,可能开始暴露到实际业务路径上。
因此,“无即时成员影响”不等于“没有运营后果”。它意味着网络从正常状态转入退化状态,而生产变更门槛应随之变化。至少应重新确认剩余链路是否独立、链路聚合是否按预期工作、交换机间路径是否能够承担负载、VTEP 之间是否保持稳定可达,以及故障切换是否在当前拓扑下真正演练过。
公开材料没有说明 LINX 在当时采用了哪些具体的退化状态变更规则。负责任的分析不能据此推断其内部流程缺失,更不能倒推出某位工程师或某个团队存在过失。证据所能支持的是一个更普遍的控制要求:路径冗余一旦下降,生产准入、维护窗口、回滚条件和验证深度都应明确升级。
冗余不是架构图上的两条线。它是一组在故障发生后仍保持独立、容量充足、状态一致并经过实际验证的替代路径。如果替代路径没有在真实故障条件下承载过代表性流量,那么“冗余”仍是一项待证明的设计主张。
6 月 20 日至 22 日:从物理退化走向选择性不可达
6 月 21 日,LINX 报告 Flowmon 检测到流量下降,交换机间链路出现抖动,随后 LON2 对等互联局域网发生流量损失和可达性问题。工程人员通过禁用部分链路恢复部分服务,之后又禁用了核心设备之间的一组链路聚合,以更全面地恢复服务。[1]
到 6 月 22 日,大范围问题已经收窄,但仍有一小部分特定 IP 地址存在可达性异常。LINX 表示,相关 MAC 地址能够在边缘设备的软件 MAC 表中看到,却没有出现在硬件表中。清除受影响 VTEP 之间的 L2VPN EVPN BGP 会话后,硬件表重新获得了相应条目。[1]
这段时序揭示了至少四种不能被混为一谈的状态:
- 物理路径状态:暗光纤是否可用,备用链路是否真正独立。
- 拓扑与链路状态:交换机间链路和链路聚合是否稳定。
- 控制平面状态:OSPF、BGP EVPN、VTEP 和 MAC/IP 可达性信息是否一致。
- 数据平面状态:硬件是否实际安装了能够转发报文的表项。
某个管理界面显示链路为 up,不代表路径上没有抖动;某次配置提交成功,不代表协议进程采用了新身份;软件 MAC 表中存在记录,不代表 ASIC 或其他硬件转发资源已经编程;BGP 会话处于 Established,也不代表每个受影响目的地址都能正确转发。
事件的技术意义就在这些差异之间。它不是单纯的“光纤坏了”,也不能被压缩为“重复 Router ID 导致了一切”。公开证据描述的是物理韧性下降、链路行为异常、协议身份残留、EVPN 会话操作以及软件与硬件表不一致共同构成的运行环境。哪些因素是触发项、放大项、伴随现象或恢复手段,需要按照各自证据分别判断。
这也是为什么恢复记录必须区分“部分恢复”“大部分恢复”和“残余问题清除”。如果只有少数 IP 地址仍不可达,汇总流量和大多数探针都可能恢复正常。把中间状态写成一个统一的“服务已恢复”时间点,会抹去选择性故障继续存在的事实。
配置事实、进程事实与转发事实不是同一件事
基础设施自动化容易让团队产生一种危险的心理捷径:只要配置源、审批记录和部署任务都正确,生产状态就应该正确。LINX 披露的 OSPF 身份问题说明,这个推论并不成立。
LINX 表示,一台此前用于实验室的路由器进入生产网络前,旧的 OSPF 和 Router ID 配置已经被移除,新 Router ID 也通过 NETCONF 部署。然而,运行中的 OSPF 进程没有被清除,因此继续使用原有身份。[1]
从配置管理角度看,新值可能已经存在;从协议进程角度看,旧值仍然有效。两份记录可以同时“真实”,却指向不同的运行结论。
这不是否定 NETCONF 或自动化。自动化能够提高一致性、减少手工错误,并保存清晰的变更记录。问题在于,自动化的成功条件如果只定义为“服务器接受了配置”,就没有覆盖协议进程是否重新读取配置、邻居是否观察到新身份、旧状态是否被清理,以及转发表是否重新生成。
更成熟的部署合同应包含明确后置条件。例如:
- 候选设备报告的实时 Router ID 必须与分配记录一致;
- 邻居观察到的 Router ID 必须与候选设备自报值一致;
- OSPF 域内不得存在重复身份;
- 需要进程 clear、restart 或设备 reboot 才能生效的变更,必须记录该动作;
- 邻接恢复后,应核对链路状态数据库和预期拓扑;
- 生产流量开放前,必须通过控制平面与数据平面的联合验证。
只有后置条件通过,自动化任务才算完成。否则,自动化记录只是“意图已经送达”的凭证,而不是“运行状态已经改变”的证明。
Router ID 是运行资源,而不是装饰性元数据
OSPF 的 Router ID 是一个 32 位标识,用于在路由域内识别路由器。RFC 2328 明确描述了其身份作用。[11] 相关厂商文档也把重复 Router ID 视为需要严肃处理的 IGP 异常,并强调标识唯一性。[18]
这些协议和运维材料支持的是一般控制原则,并不能证明某个具体厂商导致了 LINX 事件。LINX 的事件事实必须以 LINX 自身公开报告为边界。不能因为引用了某厂商关于重复 Router ID 的说明,就把该厂商推定为涉事设备或软件的供应方。
Router ID 的关键价值不在它采用了类似 IPv4 地址的表示形式,而在于它让协议能够区分状态由哪一个路由进程产生。当两个生产设备呈现相同身份时,网络对拓扑来源的判断可能受到干扰。即使配置数据库已经分配了不同值,运行进程仍可能继续使用旧值,因此唯一性必须从协议现场验证,而不能只从资产表读取。
这说明网络身份是一类需要分配、执行、核验和追踪的运营资源。类似问题也可能出现在 VTEP 地址、自治系统号、对等互联 LAN 地址、接口标识、MAC 地址、VLAN、VNI 和 Route Target 上。不同标识冲突会产生不同故障,但问责结构相似:
- 谁负责分配该标识;
- 哪个系统记录预期值;
- 哪个运行组件真正使用该值;
- 谁负责检测冲突;
- 冲突时谁有权阻止上线;
- 例外由谁批准,又如何到期。
资产台账和配置源是必要的,但它们不是运行网络的最高裁决者。记录只有与设备、邻居和报文路径的现场状态完成对账后,才能成为可靠的运营证据。
实验室设备必须被视为携带未知状态
实验室的价值恰恰来自复用。设备会被反复配置、重启、切换镜像、加入临时拓扑,并承载各种测试身份。也正因为如此,一台从实验室迁入生产网的设备不应被默认视为“空白设备”。
删除可见配置只是清理的一部分。设备还可能保留:
- 运行进程中的旧身份或邻接状态;
- 启动配置与候选配置之间的差异;
- 缓存的 MAC、ARP、邻居或路由信息;
- 旧 VTEP、VLAN、VNI 或 Route Target 映射;
- 实验室管理凭据、证书或自动化账号;
- 与生产基线不同的软件、固件或引导环境;
- 未经预期流程重建的硬件转发表状态。
并非每个平台都会保留上述全部状态,也不能从 LINX 的公开资料推断涉事设备具体保留了哪些内容。正确的控制不是列出一个适用于所有设备的假想缺陷清单,而是为每个平台定义清晰的“清洁状态”。
生产准入记录应说明设备经过了何种重置或重建,哪些状态理论上会跨重启保留,哪些协议必须执行 clear 或 restart,使用了什么软件与固件基线,以及验证者如何确认设备不再携带实验室身份。
关键验证最好来自两个方向。设备本地命令可以说明它认为自己是谁;生产邻居和集中观测系统则说明整个网络实际上把它识别成谁。只有双方一致,身份验证才闭环。一个自报正确、但邻居仍观察到冲突的设备,不应获得生产流量。
EVPN/VXLAN 把“表里有记录”拆成了多个层次
LINX 的 LON2 架构使用 EVPN over VXLAN。简化而言,VXLAN 在 IP underlay 之上封装二层帧,由 VTEP 在隧道边缘进行封装和解封装;EVPN 使用 BGP 分发覆盖网络的可达性信息。RFC 7348、RFC 7432 和 RFC 8365 分别提供了 VXLAN、EVPN 及其网络虚拟化覆盖应用的协议背景。[13][14][15]
这种架构并非事件中的“被告”。它让交换网络能够在 IP 基础设施上扩展,并通过控制平面传播可达性信息。LINX 的公开材料也把 LON2 描述为采用开放网络硬件和 EVPN 路由技术的分离式网络设计。[3][4][5][6]
但层次分离意味着运营团队必须验证多个相互关联、却不自动等价的状态:
- IP underlay 是否能稳定连接各个 VTEP;
- BGP EVPN 会话是否建立;
- 远端 MAC/IP 可达性是否被正确发布和接收;
- Bridge Domain、VNI 和 Route Target 是否匹配;
- 软件控制平面是否生成预期记录;
- 硬件数据平面是否安装相应表项;
- 实际报文是否沿预期路径到达。
在传统排障中,团队容易停在最先看到的“绿色”状态上:路由存在、会话建立、MAC 已学习。然而 LINX 报告的软件 MAC 表与硬件表不一致,恰好说明绿色控制平面并不足以证明转发已经准备好。[1]
RFC 9062 对 EVPN 的运维、管理和维护机制提出了控制平面与数据平面关联验证方面的要求。[17] 它不能证明 LINX 使用的具体实现发生了何种缺陷,但可以帮助界定合理的运营证据:需要有办法确认控制平面所描述的路径与数据平面实际执行的路径一致。
软件 MAC 表不是报文能够转发的保证
在可编程交换和路由平台中,软件表通常反映控制平面或系统软件对转发状态的理解,硬件表则更接近实际承担高速报文转发的资源。具体实现会因平台不同而变化,但两者之间需要同步这一基本事实不会消失。
LINX 观察到特定 MAC 地址出现在软件 MAC 表,却没有出现在硬件表中。[1] 对运营团队而言,这意味着“show 命令里看得到”不能自动转化为“线路上的报文能通过”。
如果排障只查询软件视图,系统可能表现为已经学习了远端位置;如果报文实际交给硬件转发,缺失的硬件项仍会造成选择性不可达。更麻烦的是,这种问题未必导致整个交换网络瘫痪。大部分地址可能正常,只有特定 MAC、IP、VTEP 组合或叶节点路径失败。
因此,生产准入和事件恢复都需要抽样进行控制—转发一致性检查。对于关键条目,应核对:
- EVPN 路由是否存在;
- 软件 MAC/IP 表是否存在;
- 硬件转发表是否存在;
- 条目指向的 VTEP 或接口是否正确;
- 实际报文是否沿该路径双向通过;
- 会话清除、链路切换或软件变更后,状态是否仍然稳定。
LINX 表示,清除受影响 VTEP 之间的 L2VPN EVPN BGP 会话后,硬件表得到重新填充。[1] 这是重要的恢复观察,但不能被扩大解释为“所有此类问题都应通过清会话解决”。清会话会重建部分状态,也可能暂时消除症状;要把它确认为根因修复,还需要能够复现故障、验证机制并证明问题在相同条件下不再出现。
对等互联网络需要成员边缘证据
互联网交换中心的共享交换平台连接许多独立网络。成员可以建立双边 BGP 会话,也可以使用路由服务器简化多边互联。LINX 的公开资料介绍了其对等互联服务和路由服务器自动化背景。[7][8][9] BGP 本身的协议行为由 RFC 4271 描述。[12]
交换中心无法控制每个成员的路由策略、上游网络或业务架构,但它直接控制共享对等互联平台的运行状态。成员端口之间的二层可达性、VTEP 转发、链路聚合、控制平面和成员通信都属于交换中心能够管理或证明的表面。
这也是为什么核心侧指标不足以完成恢复验收。下列观察均有价值,却都不能单独证明成员业务恢复:
- 管理地址可达;
- 核心链路稳定;
- EVPN BGP 会话为 Established;
- 路由服务器会话数量恢复;
- 总流量回升;
- 大部分硬件表项存在。
如果事件表现为特定 IP 地址不可达,验证必须覆盖该故障粒度。应从成员侧或具有代表性的外部观测点发起探测,跨越受影响的叶节点、VTEP 和物理路径,并核对双向转发结果。必要时还应测试不同报文尺寸和协议类型,而不是以一次 ping 成功作为全部服务的证明。
成员工单同样是证据,但不能替代网络遥测。中心监控可能遗漏局部故障,成员也可能把自身应用或上游问题误认为交换中心故障。把成员报告、Flowmon、链路状态、EVPN 路由、硬件表和报文探测按统一时间线关联,才能逐步缩小责任边界。
退化状态下,常规变更不再是常规变更
一条冗余光纤失效后,网络仍然在线,并不意味着后续操作可以继续沿用健康状态下的风险预算。退化网络应进入专门的变更模式。
首先,退化状态必须进入可供变更系统读取的运营记录,而不能只存在于即时通信频道或某位值班人员的记忆中。计划中的设备上线、软件升级或链路维护需要自动识别关键路径已经缺失,并重新计算风险。
其次,需要建立端到端依赖关系。暗光纤、交换机间链路、链路聚合、核心设备、VTEP 和 EVPN 会话可能由不同团队或厂商负责,却共同构成一条成员业务路径。单个组件的工单关闭,不代表服务已经恢复。
再次,灰度测试必须真正经过退化后的承载路径。如果测试流量绕开备用链路、相关 VTEP 或硬件转发表,它只能证明一条无关路径正常。架构代表性比灰度规模更重要:测试可以很小,但不能跳过最需要验证的控制面和数据面。
此外,应在变更开始前定义停止条件,例如:
- 检出重复 Router ID;
- 出现非预期邻接;
- 软件与硬件表不一致;
- Flowmon 丢包信号恶化;
- 交换机间链路再次抖动;
- 成员侧代表性探针失败;
- 回滚后状态无法回到已知基线。
预设停止条件可以避免事件进行中才争论“问题是否足够严重”。当触发条件与回滚权限事先明确,处置速度和证据质量通常都会提高。
6 月、11 月与“统一根因”的诱惑
LINX 的更新还记录了 6 月 29 日的进一步可达性问题,以及 11 月 5 日在厂商进行暗光纤维护后发生的间歇性流量下降。LINX 还提到,为解决硬件 MAC 表行为而实施的软件变更在 11 月事件后被回滚,厂商调查仍在继续。[1]
这些信息支持“问题值得持续追踪”的判断,却不支持把所有事件写成一条已经证实的单一因果链。
重复症状可能意味着:
- 同一缺陷再次触发;
- 前次修复只清除了状态,没有消除机制;
- 不同问题产生了相似的用户表现;
- 物理路径退化扩大了另一项故障的影响;
- 软件变更改变了故障表现,但并非唯一原因;
- 恢复动作同时修改了多个变量,导致决定性因素无法分离。
6 月的重复 OSPF 身份披露是一个具体事实;软件与硬件 MAC 表不一致是另一个具体观察;11 月还涉及暗光纤维护、软件变更回滚和持续中的厂商调查。这些线索可以共同进入事件模型,但不能在缺少内部日志、配置、缺陷报告和可复现实验的情况下被强行合并。
可靠的复发分析应为每项假设定义独立证据。例如,对旧 OSPF 身份的假设,应验证进程重置后全域 Router ID 唯一;对硬件表同步问题,应验证软件表、硬件表和报文转发持续一致;对光纤退化问题,应恢复物理路径独立性并执行可控切换;对软件变更,应保留版本、时间点、症状、回滚动作和回滚后的对照结果。
恢复服务和证明根因是两个不同目标。事件处理中可以先通过重启、清会话或隔离链路恢复业务,但事后记录必须清楚区分“恢复动作有效”与“该动作证明了唯一根因”。
可用性百分比只能开启调查,不能结束调查
LINX 2023 年年报称,LON2 的可用性为 99.997%,低于 99.998% 的内部目标,并把差距归因于若干次中断。[2] 这说明相关事件进入了运营层面的可用性记录,但该数字不能替代更细粒度的服务证据。
高可用百分比首先依赖测量定义:
- 分母采用端口时间、网络时间还是成员可达性;
- 计划维护是否排除;
- 故障由告警、流量、探针还是成员报告触发;
- 选择性不可达是否被计为全部中断;
- 部分恢复后仍受影响的地址如何处理;
- 双向不对称故障是否能够被检测。
如果指标只看端口电气状态,就可能遗漏端口在线但特定目的地址不可达的问题;如果看总流量,未受影响成员的流量可能掩盖小范围故障;如果依赖告警,指标就会继承监控系统的盲区。
因此,99.997% 是汇总记录,不是成员级影响清单。公开证据没有列出全部受影响成员、前缀、会话、站点、流量和持续时间,也没有给出可用于计算业务损失的数据。不能据此推导交易损失、服务赔偿或所有成员的共同暴露程度。
这并不削弱年报数字的意义。恰恰相反,它指出了汇总指标应当能够向下追溯:每次事件对应哪些探针、哪些服务组件、哪些恢复阶段,以及还有哪些残余问题。一个可审计的百分比必须能够回到构成它的运行事实。
安全的生产准入应是一份可执行合同
实验室设备进入生产网时,需要的不是一张静态检查表,而是一份包含前置条件、后置条件、否决条件和证据留存要求的准入合同。
设备与软件身份
记录应识别设备硬件、序列或资产身份、生产角色、软件与固件版本、启动镜像、配置来源及其校验信息。另一个合格工程人员应能够据此复现“什么设备以什么状态进入了什么位置”。
清洁状态证明
设备应按照平台规定完成重建、清理、进程重置或重启,并说明哪些状态可能持久存在。不能只记录“已删除实验室配置”,而应记录如何验证实验室邻居、VTEP、VLAN、VNI、Route Target、凭据和协议身份已经消失。
实时身份验证
记录应同时保存预期 Router ID、运行进程报告的 Router ID,以及邻居实际观察到的 Router ID。域内重复检查应在流量开放前执行,而不是等到拓扑异常后再运行。
Underlay 验证
所有相关 VTEP loopback 应沿预期路径可达。接口、度量、链路聚合和路径选择应与设计一致。若一条暗光纤已经失效,测试必须证明剩余路径能够承载预期业务,而不是只证明网络在完整冗余时工作。
Overlay 验证
设备应发布和学习预期 EVPN 信息。Bridge Domain、VNI 与 Route Target 必须和生产记录一致。未知路由、陈旧 MAC 或实验室映射不应被当作无害残留忽略。
转发表对账
选定的 MAC 与 IP 条目应在软件和硬件视图中一致存在,并指向正确的接口或 VTEP。实际报文必须跨越相关叶节点和隧道端点完成转发。LINX 的公开观察说明,只核对软件表不足以证明生产就绪。[1]
监控与回滚绑定
设备暴露生产流量前,Flow telemetry、链路状态、协议会话、硬件编程告警和成员侧探针都应绑定明确负责人。回滚触发条件、执行权限和恢复验证必须提前确定。
关闭条件
变更结束时,应保存配置校验、实时命令输出、邻居观察、探针结果、遥测数据和最终判断。若存在例外,必须记录例外所有者、有效期和补偿控制。没有完成后置验证的“部署成功”不应关闭变更。
否定性测试比成功截图更能发现残留状态
多数自动化流水线擅长证明某件事存在,却不擅长证明危险状态不存在。它们会检查预期邻居已经建立、预期路由已经出现、预期接口已经上线,却可能不检查额外邻居、重复身份或陈旧 VTEP 是否仍然存在。
实验室到生产的准入尤其需要否定性测试:
- 不存在重复 Router ID;
- 不存在非预期 OSPF 邻居;
- 不存在遗留实验室 VTEP;
- 不存在未批准的 VLAN、VNI 或 Route Target;
- 不存在只出现在软件表而未进入硬件的关键条目;
- 不存在无法归属的 MAC 或路由状态;
- 不存在绕过生产基线的镜像、凭据或启动配置;
- 不存在监控无人负责、回滚无人授权的控制空洞。
否定性测试不能证明绝对安全,但能针对实验室复用最常见的风险结构。它还使准入门具有明确的阻断能力:一旦发现冲突,设备停止进入生产,而不是把异常标记为“稍后调查”。
这种机制也有助于保护自动化信誉。流水线不是因为从不失败才可靠,而是因为它能够识别自己的后置条件没有满足,并拒绝把不一致状态包装成成功。
灰度必须覆盖生产架构真正的风险路径
“先小范围上线”本身不是充分控制。如果灰度路径绕开了 EVPN、备用光纤、相关链路聚合或硬件转发表,那么即使所有测试成功,也没有覆盖事件所揭示的风险。
有效灰度应满足两个条件:范围可控,路径真实。
范围可控意味着异常不会立即扩散到整个对等互联平台;路径真实意味着测试流量仍然经过与正式业务相同的协议进程、VTEP、控制平面和硬件编程过程。一个只验证管理口连通性的灰度,对成员报文转发几乎没有证明力。
在网络已处于退化状态时,灰度还必须使用实际承担保护流量的剩余路径。否则,团队可能在一条健康但无关的路径上得到成功结果,随后把设备放入一条没有经过验证的真实承载路径。
灰度前应冻结一组代表性基线,包括 Router ID、邻接、路由数量、选定 EVPN 路由、软件和硬件 MAC 条目、VTEP 连通性、链路丢包和成员侧探针。上线后按同一维度重新采集,任何关键差异都应能够追溯到预期变更,而不是留作解释不清的“环境波动”。
恢复闭环必须到达成员可见的报文路径
事件关闭最常见的偏差之一,是把内部组件恢复当成服务恢复。链路不再抖动、BGP 会话重新建立、硬件表恢复,都只是闭环的一部分。
成员使用的是端到端报文路径,而不是某个单独组件的健康状态。完整恢复至少应回答:
- 哪些成员侧或代表性观测点已验证;
- 哪些地址或路径此前失败;
- 双向转发是否都恢复;
- 是否跨越了受影响的叶节点和 VTEP;
- 是否验证了链路切换后的路径;
- 是否仍有残余故障或未验证范围;
- 恢复动作是否持续稳定,而非短暂重建状态。
LINX 的时序表明,禁用部分链路后服务得到恢复,但特定 IP 可达性问题仍延续到下一阶段。[1] 因此,关闭记录应保留“广泛恢复”与“残余问题解决”之间的时间差,而不是把两者压缩成一个时间戳。
公开通报也应采用同样边界:明确已恢复的服务范围、验证方式、仍在调查的问题和置信度。谨慎措辞不是为了弱化责任,而是为了防止临时 workaround 被后续团队误认为已经验证的永久修复。
把责任分配到控制面,而不是仓促寻找单一责任人
网络事件跨越物理基础设施、设备软件、交换平台和成员网络,责任因此可能分布在多个主体之间。但责任分布不应成为责任模糊的借口。
LINX 能够控制的表面包括设备生产准入、配置自动化、网络监控、维护顺序、链路隔离、会话清除、共享交换平台以及成员通信。即使设备或光纤由外部厂商提供,这些仍然是交换中心直接拥有的运营决策面。
光纤供应方负责其合同范围内的物理维护和修复;设备或软件供应方负责产品调查、缺陷分析和可用修复。公开记录提到厂商调查仍在继续,这只能证明技术工作尚未完全结束,不能自动证明法律过失、合同违约或某家厂商承担全部责任。[1]
成员则控制自身端口、BGP 会话、路由策略和业务连续性选择。一些成员可能使用路由服务器,一些使用双边互联,也可能同时连接 LON1、LON2、其他交换中心或上游 transit。公开资料没有给出每个成员的架构,因此不能假定所有成员具有相同暴露,也不能假定另一条商业连接一定构成独立、可用的故障切换路径。
更有效的责任矩阵应逐项回答:
- 谁知道网络处于光纤退化状态;
- 谁有权推迟设备上线;
- 谁分配并验证 Router ID;
- 谁执行进程清除或设备重启;
- 谁核对 EVPN 控制状态与硬件表;
- 谁从成员侧验证可达性;
- 谁决定回滚;
- 谁对外说明残余风险;
- 哪项证据标志着各自工作真正结束。
这种问责方式比直接寻找“罪魁祸首”更严格。它允许多个组织分别承担明确职责,同时避免在证据不足时作出法律或道德定性。
复发管理需要版本化证据,而不是重复同一套动作
如果事件再次发生,团队容易重复上次曾经恢复服务的动作:重启设备、清除会话、回滚软件、隔离链路。问题在于,上次有效的恢复动作未必等于已经证实的根因修复。
版本化证据包应把每项动作绑定到一条可检验假设:
| 假设 | 预期变化 | 所需证据 |
|---|---|---|
| OSPF 进程仍使用旧 Router ID | 进程重置后全域身份唯一 | 本地状态、邻居观察、重复 ID 扫描 |
| 控制状态未正确写入硬件表 | 软件表、硬件表和报文路径持续一致 | EVPN 路由、软硬件 MAC 表、实际转发测试 |
| 光纤故障降低了路径独立性 | 物理多样性恢复,故障切换通过 | 路径记录、链路状态、容量数据、受控切换 |
| 软件变更影响硬件表行为 | 特定版本下症状可复现并在修复后消失 | 软件版本、激活时间、症状、回滚及对照测试 |
| 会话重建只是暂时恢复状态 | 在不重复人工清理的情况下保持稳定 | 长时间遥测、会话状态、成员侧持续探针 |
所有证据应共享可靠时间线。设备日志、Flowmon、配置系统、工单、成员报告和恢复动作如果时钟不一致,就可能把先后顺序错误地解释为因果关系。记录还应区分事件发生时间、首次观察时间和处置时间。
当 11 月出现与 6 月相似的流量下降时,只有内部机制也被证实相同,才能提高“同一根因复发”的置信度。如果相同的只是成员可见症状,结论就必须更克制。
面向运行网络的治理指标
传统指标如变更成功率、平均恢复时间和年度可用性仍然有用,但不足以衡量这类事件揭示的控制质量。
更接近运行现实的指标包括:
- 预期 Router ID 与实时 Router ID 不一致的次数;
- 上线过程中发现重复身份的次数;
- 设备需要计划外进程 clear、restart 或 reboot 的比例;
- 灰度期间发现陈旧邻居、VTEP、路由或 MAC 状态的次数;
- 软件表与硬件表不一致的频率;
- 网络在路径冗余不足状态下运行的时间;
- 退化期间执行的生产变更数量及其风险批准情况;
- 广泛恢复与残余成员问题解决之间的时间差;
- 从成员侧代表性观测点完成验证的服务比例;
- 事件记录中具备同步遥测、协议身份、硬件状态、报文探针和责任人的比例。
这些指标也可能被形式化流程异化。团队可以提高“检查完成数量”,却没有提高检测真实异常的能力。因此,指标需要与实际事件结果对照,并通过抽样复核、独立验证和失败案例回放保持真实性。
最终问题不是表格填了多少行,而是控制能否在成员先发现问题之前,识别出预期状态与运行状态之间的差异。
公开证据不能支持哪些结论
现有公开材料没有给出所有受影响成员、前缀、会话、站点和流量规模,也没有披露每次 6 月及 11 月可达性问题的完整持续时间。
材料没有提供完整设备配置、进程内存状态、自动化事务详情、硬件转发表快照或厂商缺陷记录。因此,不能断言重复 Router ID 单独解释了每一次流量下降,也不能把软件与硬件 MAC 表不一致自动归因给某个未被 LINX 点名的厂商。
证据也不支持以下结论:
- 第一次暗光纤故障立即影响了成员;
- EVPN、VXLAN、OSPF、BGP、NETCONF 或分离式网络硬件天生不安全;
- 99.997% 的年可用性可以换算为所有成员的具体业务损失;
- 每个成员都缺少有效的替代路径;
- LINX、某位工程师或某个供应方存在疏忽、隐瞒或合同违约;
- 6 月和 11 月所有症状已被一个统一根因解释。
协议文档能够解释技术机制,厂商文档能够说明一般运维原则,LINX 报告能够支持其自行披露的事件事实。三类证据不能相互越权。保持边界并不会削弱文章的判断,相反,它使真正能够成立的问责结论更加清晰。
运行网络才是最终记录
LON2 事件留下的核心教训,不是实验室设备不应复用,也不是现代 EVPN 网络过于复杂。真正的问题是:从预期状态进入运行状态的过程,是否被证明。
配置库可以分配新的 Router ID;NETCONF 可以成功提交配置;资产系统可以显示正确设备;EVPN 控制平面可以显示已经学习的 MAC;可用性仪表板也可以继续接近 100%。这些记录都可能是真的,而报文路径仍然是错的。
最终运营记录必须来自运行网络:
- Router ID 在整个协议域内真实且唯一;
- 邻接和链路状态数据库与预期一致;
- VTEP 通过当前 underlay 稳定可达;
- EVPN 控制信息正确传播;
- 软件状态已同步到硬件转发表;
- 暗光纤或其他路径失效时,剩余路径通过真实故障测试;
- 成员侧代表性探针证明端到端报文可达;
- 所有异常、例外、回滚和未知项都与同一时间线绑定。
这套标准不会削弱自动化,反而使自动化更值得信任。真正成熟的自动化不是永远显示绿色,而是在后置条件失败时拒绝上线,并准确说明预期值、运行值和阻断原因。
互联网交换中心处在许多独立网络之间,无法替每个成员决定路由和连续性策略,但能够证明共享交换平台的运行状态。它可以识别已经退化的物理韧性,拒绝重复协议身份,核对 EVPN 控制平面与硬件数据平面,验证代表性成员路径,并诚实保留仍然未知的部分。
LINX 的公开说明之所以有价值,正是因为它提供了少见的运行细节:光纤韧性下降、实验室设备保留旧 OSPF 身份、软件与硬件 MAC 表不一致、链路与会话处置、后续事件、软件回滚和持续调查。[1][2]
负责任的结论不是把这些细节加工成一个简单的追责故事,而是把它们转化为下一次设备准入时不可绕过的证据门。
未经演练的冗余路径只是一项承诺。只存在于配置库中的新身份只是一项承诺。只存在于软件表中的 MAC 条目同样只是一项承诺。只有当运行网络证明这些承诺已经变成稳定、可重复、可审计的报文转发现实时,基础设施问责才真正成立。
来源
- https://www.linx.net/wp-content/uploads/2022/07/LINX120-OpsRouteServers-AnneBatesTimPreston.pdf
- https://www.linx.net/wp-content/uploads/2024/05/Annual-Report-2023.pdf
- https://www.linx.net/news/world-first-as-linx-completes-migration-to-new-disaggregated-lon2-network-model-using-evpn-routing-technology-on-open-network-hardware/
- https://www.linx.net/lon2-and-the-linx-dual-lan-in-london/
- https://www.linx.net/wp-content/uploads/2021/02/DSLONA4v3-0920-1.pdf
- https://www.linx.net/wp-content/uploads/2021/04/LINX-2018-Annual-Report.pdf
- https://community.linx.net/exchange-docs-oo8vcsp0/post/linx-route-servers-information-xCXmq6SqZUpC80k
- https://www.linx.net/services/peering-services/
- https://www.linx.net/route-server-automation/
- https://www.linx.net/wp-content/uploads/2025/04/Peering-Bandwidth-Service-Terms-REDLINE-Draft-10-March-vs-22nd-April-1.pdf
- https://www.rfc-editor.org/rfc/rfc2328.html
- https://www.rfc-editor.org/rfc/rfc4271.html
- https://www.rfc-editor.org/rfc/rfc7348.html
- https://www.rfc-editor.org/rfc/rfc7432.html
- https://www.rfc-editor.org/rfc/rfc8365.html
- https://www.rfc-editor.org/rfc/rfc5880.html
- https://www.rfc-editor.org/rfc/rfc9062.html
- https://www.juniper.net/documentation/us/en/software/juniper-routing-director2.7.0/user-guide/topics/concept/igp-anomaly-detection-overview.html
- https://www.juniper.net/documentation/us/en/software/junos/bgp/topics/topic-map/troubleshooting-bgp-sessions.html
- https://www.peeringdb.com/ix/321
会员简报
档案背景详情
使用相应会员等级登录,即可解锁完整简报与来源注释。
仅限 Strategic Circle
Strategic Circle
所有读者均可浏览。加入并登录后可解锁档案简报。
加入 Strategic Circle仅限 Leadership Alliance
Leadership Alliance
符合条件的 IP 资产所有者和管理层可登录查看 Leadership Alliance 简报。
加入 Leadership Alliance
