4. 冗余网络拓扑设计
冗余网络拓扑设计的目标不是“多连几根线”,而是在给定重量、成本、布线空间和实时性约束下,让任意单点故障发生后,关键数据仍能在可接受时延内到达目的地。机载网络常用的冗余拓扑可归纳为双星型、双环型、网状网和混合拓扑四类,它们对故障的容忍方式、切换行为和布线代价各不相同。
四类冗余拓扑的结构与故障行为
双星型由两台互为备份的交换机(如 AFDX 中的 A/B 网交换机)构成核心,每个端系统通过两条独立链路分别接入两台交换机。端系统发送时通常将同一帧复制到 A、B 两条网络,接收端按“先到先取、后到丢弃”的冗余管理策略处理,因此单条链路或单台交换机失效时,另一条路径仍可承载数据,切换对上层几乎透明。其代价是链路数量约为端系统数的两倍,且两台交换机同时失效时网络分区。
双环型将节点串成两个方向相反的环,正常时数据沿一个方向传输,环上某段断开后由环保护机制将流量倒换到反向环。它的优点是布线沿机身走向更省线,故障后仍能保持连通;缺点是数据要经过中间节点转发,跳数随时延增加,且环保护倒换需要几十毫秒量级的时间,对硬实时业务需谨慎评估。
网状网在节点之间建立多条互不相同的路径,任意单点甚至多点故障后仍可通过其余路径到达,冗余度最高,但链路数和交换机端口消耗大,路由与配置复杂度也最高,通常用于核心骨干而非全部端系统。
混合拓扑把上述形式组合:核心用双星或网状保证高可靠,边缘用双环或星型接入以控制成本,是实际机载网络最常见的形态。
拓扑冗余度评估方法
评估一个拓扑的冗余度,不能只看“有没有备份”,而应量化三个指标:单点故障容忍数(任意移除多少个节点或链路后网络仍连通)、故障后路径跳数增量(决定时延是否仍满足 VL 的 BAG 与最大时延约束)、切换时间(是否小于业务允许的中断窗口)。工程上常用“最小割集”思路:找出使源到目的断开的边或点集合,集合越小说明冗余越弱。例如双星型中,若两台交换机之间没有互联链路,则割集为 {SW-A, SW-B},大小为 2;若增加一条交换机间互联链路,割集变为 {SW-A, SW-B} 仍为 2,但单台交换机失效时可通过互联链路绕行,实际可用性提升。
评估时还需区分“物理冗余”与“逻辑冗余”。两条链路若走同一线束、同一连接器,则物理上仍可能共因失效,逻辑冗余度要打折。因此拓扑设计必须与线束分离、连接器分离、供电分离一起考虑。
典型机载网络拓扑案例:AFDX / ARINC 664
ARINC 664 Part 7(即 AFDX)是典型的双星型冗余网络。其核心是两台冗余交换机,端系统通过 A、B 两条独立链路分别接入,形成两个逻辑上独立的网络。端系统发送的每个帧被复制到 A、B 两网,接收端启用冗余管理(Redundancy Management),对同一序列号的两个副本只保留先到者,从而在单网故障时无中断切换。
AFDX 用虚拟链路(VL)实现带宽与延迟的确定性保障。每条 VL 定义 BAG(带宽分配间隔)、Lmax(最大帧长)和最大时延。以一条 BAG=8 ms、Lmax=512 字节的 VL 为例,其带宽分配为 512×8/0.008 ≈ 512 kbit/s,网络设计时必须保证所有 VL 的带宽之和不超过链路容量的约 50%~75%,留出余量应对突发与故障绕行。
在拓扑层面,AFDX 的冗余度评估可这样落地:假设某端系统 ES1 到 ES2 有两条路径,分别经 SW-A 和 SW-B。若 SW-A 失效,流量全部转到 SW-B,此时 SW-B 的负载上升,需检查其剩余带宽是否仍满足所有 VL 的 BAG 约束。若 SW-B 端口利用率从 45% 升至 78%,虽未超限但已接近阈值,说明该拓扑在单交换机故障下仍可工作,但余量偏紧,可考虑增加交换机间互联链路或调整 VL 分配。
拓扑选择与冗余度权衡
实际选型时,可按以下顺序判断:先确定业务允许的故障中断时间,再确定需要容忍的单点故障数量,然后比较各拓扑的链路开销与配置复杂度。对硬实时、低时延的端系统接入,双星型通常最优;对区域骨干,双环型在布线受限时更有优势;对核心交换节点,网状网可提供更高容忍度;整机层面则普遍采用混合拓扑,在核心用双星或网状、在边缘用双环或星型,兼顾可靠性与重量成本。
无论选择哪种拓扑,最终都要回到可验证的指标:故障后路径是否存在、跳数增量是否可接受、切换时间是否小于业务窗口、剩余带宽是否满足 VL 约束。只有这四项都通过,拓扑冗余设计才算闭环。