#496 1969 · Steve Crocker / ARPANET Network Working Group · Computing standards
UCLA研究生亲手剥掉自己备忘录的权威,让对手敢回一封挑战信
问题
没人有资格敲定四个站点必须共用的网络协议规则
背景
到1969年,ARPANET的四个站点——UCLA、斯坦福研究院、加州大学圣巴巴拉分校和犹他大学——已经有了一个初具雏形的网络,却没有一套各方同意的规则来规定计算机到底该怎么互相通信。聚在一起商量这事的大多是研究生和初级员工,来自互为对手的大学实验室,没有正式章程、没有指定主席,头上也没有任何专业标准委员会;人人都以为,早晚会有一支'真正的'资深工程师团队来接手。
25岁的UCLA学生Steve Crocker志愿把小组对网络协议的早期想法写成文字。这项工作的常规做法,就是工程文档通常长成的样子:一份编号的规范,写明系统应当做什么。但小组里没有任何人被授予发布规范的资格,而Crocker也无从知道将来会不会有谁站出来主张那份权威、反对一个研究生抢先把它占了。
换别人会怎么做
把网络第一批协议记录写成工程文档通常的样子:一份说明当做什么的规范。可这个格式恰恰是没有被授予权威的小组最不能安全发布的东西,因为它读起来像是一个实验室在替其他实验室做决定——而Crocker担心的正是,将来被指派来负责的资深工程师会有同样的反应。
他们看到了什么
Crocker看出危险不在备忘的内容,而在它宣称的地位。一份什么都不宣称的文档,就没有什么可让对手团队争夺;把权威从格式本身里剥掉,内容就变得可以放心写、放心答,无论谁来写、位阶如何。
那一手
Crocker还是写了这份备忘,但标题是'Request for Comments'(征求意见稿)而不是规范,并且刻意用试探性、不具约束力的措辞去写,明明白白邀请大家异议,而不是宣告一项决定,让其中没有任何一句会被读成某个团队在向其他人发号施令。
为什么管用
把这套记录命名为'Request for Comments'、写成开放式问题而不是决定,就移除了参与的社会风险:谁都不必位列他人之上才能发布一篇,读到的人也无需向任何人的权威低头才能回应。这么低的门槛让互相对立的实验室里几十位工程师都能自由贡献;又因为贡献可以自由积累、得到检验,这个群体只要靠简单的自愿采纳——'粗略共识和可运行的代码'——就能收敛到共同的协议,而不必等一个有裁决权的委员会。
值了多少
这种口吻一直延续:贡献者始终用同样的免责、第一人称、不具权威的腔调写下去,几十年不断。到2009年该系列40周年时,RFC文档已超过5,000份,全部免费公开,成了互联网真正定技术标准的机制——不是靠委员会投票,而是靠参与者所说的'粗略共识和可运行的代码'。
什么时候会失灵
这套做法只在真正的机构性利害出现之前管用——金钱、专利,或是法律上具备约束力的标准机构——因为弃权声明并不能消除真实的冲突,它只在还没人实际握有强制力、采纳还能保持自愿的地方起作用。一旦标准必须靠强令而非仅仅靠采纳,或者一旦参与各方会因别人的草案胜出而损失什么,谦逊的框架就不再能化解争夺,一个真正的权威结构就不可避免。
后来呢
RFC这个格式即使后来成了承载整个互联网的正式标准流程,也始终没改它谦逊的名字;如今该系列已超过9,000份,IETF至今仍用它发布标准。2002年,Crocker凭这个单单一个命名选择就开启的流程,获得IEEE互联网奖。
资料来源
- [1]RFC 1000 — The Request For Comments Reference GuideRFC Editor / Internet Engineering Task Force, 1987rfc-editor.org
- [2]How the Internet Got Its RulesThe New York Times, 2009nytimes.com