摘要
- RFC 9720 将 RFCXML 的“最终格式”、以该格式发布的“最终版本”、HTML/纯文本/PDF 等“发布格式”及其具体“发布版本”分开,允许在狭窄理由下重发,但要求尽可能保持语义内容。
- 当前文件本身不是完整证据。只有旧版本、创建或重发日期、公开理由和可审阅的差异同时存在,读者才能区分修复显示与改变规范。
从单一文本到多种版本
过去把 RFC 想象成一个冻结的 ASCII 文件,直观而有保护性。它防止机构在实施者已经写进代码、合同已经引用之后再改写历史。但 RFC 系列转向 RFCXML 后,一份 RFC 有了承载完整发布信息的 XML,也有 HTML、纯文本和 PDF 等面向读者的输出。XML 可能发现错误,schema 会演进,生成工具也会变老。若一概禁止变化,公共档案被迫永久保留可修正的缺陷;若一概视为“只是格式”,生产环节就取得了不受约束的编辑权。
2025 年 1 月在 Editorial Stream 发布的 RFC 9720 没有选这两个极端。它取代 RFC 7990,并更新当时 RFC 9280 中的稳定性政策。它是信息性 RFC,不是 Standards Track 规范;它不命令某个网络如何部署,也不保证每一次重发都对每个依赖者无害。
它首先拆开一个容易被混用的词。“canonical format”过去既像是指可生成多个输出的 XML,又像是指被授权和归档的文件。RFC 9720 以最终格式指 RFCXML,以最终版本指该格式下已经发布的 RFC;HTML、文本、PDF 是发布格式,而各自的具体文件才是发布版本。名称的拆分是权限的拆分:PDF 外观不同,不能直接推出标准含义变了;XML 可以维护,也不能直接推出编辑者有权随意修改规范。
可以动的是什么,不能动的是什么
RFC Production Center 可以重新发布最终版本,但理由是有范围的:RFCXML schema 更新、在 XML 中发现错误,或生产发布版本的工具发生变化。规则要求“在最大可能范围内”保留语义内容。这个表述并没有假装零风险;RFC 明说即使面向语法的改动也可能意外造成语义变化。它要求的是识别风险、理解风险、降低风险,而不是把风险藏在“维护”这个词里。
发布版本的处理同样克制。重新发布是允许,不是强制。生产机构要同时衡量系列呈现的一致性和语义改变的风险。于是,不能为了维持“从不改变”的口号而把已知 XML 错误永久封存;也不能把每一个视觉偏好都说成必须替换历史文件的理由。
这是一种最小初始规范。共同层只规定必须共享的约束:语义不能被随意移动,维护权有明确边界。文件如何保存、历史版本如何定位、未来用什么工具,留给真正负责档案运行的机构和技术社群。RFC 9720 没有规定历史文件必须用哪一种方式寻找,恰恰避免把格式政策伪装成整个存储系统的总授权。
档案不是附属品,而是反向制衡
真正把维护权锁住的,是历史记录。RFC 9720 要求 RFC Production Center 保存所有较早的最终版本和发布版本,并且用与当前文件相同的访问方式提供。每一组归档都要记载创建或重新发布的日期。最终版本每次重发,还必须有公开记录和简短理由。
这使档案成为信任机制的一部分。今天打开的 HTML 页面不足以回答某个图、一个引用、一个非 ASCII 字符、一个规范性词语或被工具读取的示例是否曾改变。需要同时查看前后版本、重发理由和实际差异,再把差异与依赖它的代码、采购条款或审计流程相连。换行、字体或图像位置可能只有视觉影响;MUST、引用目标、数据模型元素或可执行示例的变化则可能不是。
责任也在此被分开。作者和审批程序对原本要表达的语义负责;生产环节在记录的边界内维护表示形式;实施者、供应商和网络运营者仍决定自己固定哪一个版本、如何验证、是否接受更新。谁提供最新文件,并不因此有权替承担运行风险的人作决定。
IETF Datatracker 的公开资料显示,Heather Flanagan 曾在 2012 至 2019 年担任 RFC Series Editor,目前是 Spherical Cow Consulting 的 Principal,并共同担任 SPICE 与 HotRFC 主席。这些事实说明她为何适合作为人物入口;它们不支持把 RFC 9720 写成她的单独创作,也不支持把她描述为当前 RFC Production Center 的操作者或一切重发决定的主人。
相同 RFC 编号不是完整回执
2026 年 2 月发布的 RFC 9920 取代 RFC 9280,并在一组 RFC 系列文件中更新 RFC 9720。政策本身也会在程序中演进。这一事实既不证明任何新文件都有害,也不证明任何变化可忽略。问题始终应落到具体依赖:当时使用的是哪个版本?差异是什么?哪个系统组件解释了这一部分?是否有可验证的回退?
运营者的证据包不应只留下 RFC 编号。它还应保存最终版本与发布版本的标识和日期、取回 URL 与哈希、公开的重发理由、语义差异与渲染差异、相关工具链版本、依赖组件、审阅者及可逆的发布边界。旧版本必须仍然能够取到。
这与 Heng Lu 对证据、决定和授权的区分一致。生产方公开说明一次重发,是关于它已执行动作的证据;它并不因此取得命令其他组织自动更新依赖的授权。承担停机、合规或合同后果的人,仍要拥有测试、接受或拒绝的决定权。
来源
- IETF Datatracker — Heather Flanagan
- RFC 9720 — RFC Formats and Versions
- RFC Editor — RFC 9920
- RFC Editor — RFC 7990
- Heng Lu — Minimum Initial Specification, Localized Future Decision, and Voluntary Adoption
- Heather Flanagan 公开媒体资料
- IETF Datatracker — RFC 9720
- RFC Editor — RFC 9720 记录
- RFC Editor — RFC 7997 记录
- Heng Lu — Running-Code Primacy
- Heng Lu — On the Agency Problem at the Core of Internet Governance
会员简报
档案背景详情
使用相应会员等级登录,即可解锁完整简报与来源注释。
仅限 Strategic Circle
Strategic Circle
所有读者均可浏览。加入并登录后可解锁档案简报。
加入 Strategic Circle仅限 Leadership Alliance
Leadership Alliance
符合条件的 IP 资产所有者和管理层可登录查看 Leadership Alliance 简报。
加入 Leadership Alliance
