摘要

  • draft-many-teas-rsvp-power-00 提出一套五状态双端流程,让一个被精确识别的 TE 资源进入休眠并重新唤醒。00 版仍是个人互联网草案,RSVP POWER 对象的编号尚未分配。
  • 信令只负责协调,相邻设备上的本地电源管理器才执行物理动作。完整证明必须分别覆盖协议状态、两端硬件、保留的 TE 状态、不依赖休眠链路的唤醒通道,以及恢复后的实际转发。

控制台上的流程很漂亮:SleepPrepare 发出,对端接受,GoSleep 随后获得确认,事务被标记为完成。机房里的端口却仍在耗电,因为本地保护条件拒绝了物理关断。

这并非故障故事的虚构,而是 2026 年 9 月 30 日发布的 Power Transition Framework for TE Resources 主动划出的架构边界。草案规定两端如何协商;真正改变硬件电源状态的是规范范围之外的本地电源管理器。文本因此明确要求:不能仅仅因为休眠请求已经发送,就报告操作成功。

文件地位也必须准确。00 版是关联 TEAS、拟进入 Standards Track 的个人工作草案,2027 年 4 月 3 日到期。它不是 RFC,不代表工作组共识,不是 IANA 分配,也不是实现或部署证明。新 RSVP POWER 对象的 Class 和 C-Type 仍为 TBD。

先回答“哪一条链路”

一次事务只作用于一个明确资源。两个路由器之间可能有多条平行链路,它们承担不同的主用、备用和保护职责。消息从相关邻接到达,并不意味着接收方可以顺手选择另一接口。

在 RSVP 实现中,有编号链路由发送方本地链路地址与零索引表示;无编号链路则由发送方路由器标识符和本地无编号 TE 链路标识符共同表示。这是一个复合身份,接收方若不能唯一解析,就必须拒绝,而不是猜测。

因此,“节点 A 要求节点 B 省电”不是有效回执。记录必须保存复合标识、已认证对端以及它在本地解析到的确切接口。范围不是库存附注,它是避免关错链路的第一道安全控制。

Ready 只表示愿意继续

草案区分 Operating、Requisition、Ready、Pending 和 Sleeping。Requisition 是请求准备后的等待;Ready 表示接收方已经同意、发送方可能仍在等待本地授权;GoSleep 发出后进入 Pending;Sleeping 才是协同转换完成状态。

这些名称防止运维系统把不同主张压成一个绿色图标。SleepPrepareAck 证明对端解析了资源并愿意参与,却不证明接口已经断电。GoSleep 是进入下一阶段的指令,不是硬件读数。GoSleepAck 结束对端交互,也仍需与两端各自的物理状态相互印证。

一份可信记录应同时连接两条链。协议链保存对端、资源、角色、预期状态、消息标识和超时结果;执行链保存本地电源管理器的决定和观测到的硬件状态。如果产品只给出“休眠成功”,却说不清是哪条证据闭合了这个结论,状态名称就大于事实。

不确定时,默认保持运行

草案采用保守失败策略。资源未知、能力缺失、对端关系不可用、本地授权失败、消息畸形、发送失败或状态不符,都不得导致资源断电。节点必须留在或回到 Operating。

RSVP 实现为 SleepPrepare 和 GoSleep 确认阶段建议 180 秒等待。这个数是默认计时器,不是恢复服务承诺,也不意味着正常转换需要 180 秒。超时后应清理事务并报告失败,绝不能把超时本身变成关断理由。

两端还可能同时为同一个资源发起准备。此时,数值更大的稳定可比较节点标识符保留 Sender 角色,另一端取消自己的发送事务并改为 Receiver。规则只适用于同一资源;同一对设备上的两条平行链路不是冲突事务。它解决协调冲突,却不会替运营者决定这条链路是否应该休眠。

控制状态要比物理电源活得更久

资源休眠期间,链路身份、地址、TE 属性和平行链路区分必须保留。现有 LSP、路径、预留、标签和保护状态要按相关协议与策略保留或协调。休眠不能被当成一次默默成功的拆除。

“保留”不自动等于“正确”。长时间休眠后,预留可能过期;一个计算系统可能已经排除该资源,另一个数据库仍把它当作可用。节点必须阻止新流量使用不可用资源,并且只有在唤醒和本地就绪都完成后,才恢复正常资格。

恢复回执应说明哪些状态保留、哪些撤回、哪些改变、哪些重新安装。把对象留在数据库里,只证明将来有机会恢复;它不能证明分布式状态最终会回到同一个一致版本。

休眠链路不能携带自己的闹钟

任一端点、本地策略或服务需求都可以触发 GoWakeup,重复唤醒请求应当幂等。但请求必须走一条不依赖休眠资源本身的路径。草案要求资源睡眠期间至少仍有一条控制面路径可用。

这条路径需要真正的独立性证明。所谓“管理网络”可能在逻辑上分离,却仍与目标链路共享线卡、光纤管道或供电。草案没有强制某种带外架构,但把这一依赖交给本地设计明确解决。

收到 GoWakeup 也只是恢复起点。运维链还要观察硬件就绪、邻接或可达性恢复、预留与保护状态完成协调、资源重新参与 TE 计算,以及测试流量实际通过。“唤醒消息已送达”不是“转发已经恢复”。

所以证据顺序不能省略:精确草案版本、获批本地策略、复合资源身份、两端资格、准备回执、休眠指令、独立物理回执、TE 状态保管、独立唤醒路径、本地就绪、TE 重新参与和转发结果。功耗或碳排结论在这之后另行测量,不能从协议状态推导。

Lu Heng 关于“最小初始规范”的原则正适合这里。公共层只需要标准化身份、消息、角色、冲突和安全失败;休眠资格、物理动作、证据保留与服务阈值由承担风险的运营者决定。自愿采用最终要由运行代码和结果证明,而不是由草案发布或功能开关证明。

来源