摘要

  • RFC 9566 把 DetNet 序列信息放进 MPLS-over-UDP/IP 的控制字,使服务层节点能够复制数据包、消除重复副本并恢复次序。
  • 有序输出只说明某条已配置 PREOF 链放行了哪些包,并不说明缺号为何发生、迟到副本是否仍存在,或应用是否赶上最后期限。
  • 运营证据应分别保留配置、每份副本的实际路径与时间、消重窗口、排序计时器以及接收端结果。

一个数据包变成三份。最先到达的副本被保留,后来的副本被判为重复;排序功能遇到缺号后暂存后续数据,等前序到达,或等 POFMaxDelay 到期再放行。最终序列很整齐,但整齐并不等于网络历史完整。

RFC 9566 复用 DetNet MPLS 服务子层和 MPLS over UDP/IP,让 DetNet IP 获得 PREOF。DetNet Control Word 携带序列信息,S-Label 携带接收端本地 Service-ID,UDP/IP 隧道承担转发。零 F-Label 让节点使用 MPLS 字段而无须部署 MPLS 转发平面。

Service-ID 由接收端决定,可在中继节点改变,也可在复制产生的成员流之间不同。地址、UDP 端口、Flow Label 与 DSCP 能把包匹配到本地配置,却不能证明发送者意图、资源实际保留或真实路径。

这也意味着 Service-ID 不能充当跨节点的全局保管链。要把两个观测连起来,必须知道当时生效的配置纪元、两端如何映射服务上下文,以及序列状态是否经历初始化。否则,重置后的同一序列号可能被误认成旧流的延续,而不同成员流的局部标识也可能被错误合并。

多份副本不等于多条独立命运

PREOF 追求“最大程度分离”的路径,但不同隧道仍可能共用光纤、电源、队列、控制器错误或聚合隧道。RFC 9566 还明确指出,同一 UDP 隧道里的聚合流走相同路径。因此复制收据必须包含配置纪元、成员流、实际路径、共同风险与逐副本时间,而不能只报“复制了三份”。

消重只能给出局部裁决

历史窗口把到达项分为新包、重复、迟到或窗口外数据。缺号可能意味着丢失,也可能来自延迟、选择器错误、状态重置、窗口过期、过滤或副本根本没有进入预期成员流。被保留的只是当时局部状态接受的副本,并不天然更及时,也不代表其他副本已经消失。

RFC 9550 限定了排序功能的权力:POF 只在 DetNet 流的时延边界内恢复次序,不增加可靠性。基本算法等前序到达或计时器到期。计时器到期是一项工程放行决定,不是前序不存在的证明。

POF 假设 PEF 已消除重复,且复制路径之间的时延差已知且有界。迟到超过边界、意外重复、初始化和重置都可能再次造成乱序或额外等待。条件缓冲还会增加突发性,需要独立整形功能处理。

“输出很整齐”甚至可能成为一种观测盲区。如果系统只保存已经消重、排序后的流,就会丢掉副本之间的时延分布、计时器反复到期的频率,以及慢路径与应用失败之间的联系。面向应用的干净输出有其价值,但审计层必须保留生成这份干净输出时被折叠掉的事实。

完整证据链应连接:选择器与 Service-ID、源端序列、各成员副本、路径与队列、消重窗口、保留与丢弃、排序缓冲与计时器、重置纪元、出口时间以及应用完整性和最后期限。标准定义机制,只有跨层观测才能证明结果。