一份 1970 年代的网络文档,今天读起来反而有点扎眼。

Chaosnet 是 MIT AI Lab 在 1975 年为 Lisp Machine 系统开发的本地网络。它不是互联网,不是现代以太网的替代品,也不是今天那种带叙事包装的“去中心化网络”。它要解决的问题很窄:在一两公里范围内,把几十台机器和共享资源连起来,而且要快。

这事值得看,不是因为它预言了什么大未来。恰恰相反,它最清醒的地方,是知道自己不做什么。

Chaosnet 解决的是实验室里的真问题

Lisp Machine 系统的结构很有年代感,也很实际:每个活跃用户有自己的“个人”处理器、内存和交换盘,但文件放在中央文件系统里。

这样做有好处。用户跑大型 Lisp 程序时,不必被别人拖慢;程序、文件、备份和通信又能集中管理。

麻烦也来了:中央文件系统不能慢。网络在这里不像“上网”,更像传统系统里的本地磁盘通道。延迟和吞吐一旦拉胯,个人机器的体验就跟着塌。

Chaosnet 连接的也不只是文件服务器。

问题Chaosnet 的回答
服务对象MIT AI Lab 的 Lisp Machine 内部通信
网络范围一两公里内的局域网,单根 ether 约 1 公里
节点规模几十台机器
共享资源文件系统、打印机、磁带机、特殊处理器、I/O 设备
设计目标简单、高性能、可靠、易维护

所以,Chaosnet 的“无中心控制”别往今天的区块链叙事上套。它不是在讲意识形态,也不是要证明某种世界观。

它只是很工程地处理一个问题:别让单一中心控制点变成故障点。实验室网络坏了,要能尽快判断是线缆、主机硬件,还是软件问题。

对计算机网络史读者来说,这能纠正一个常见误读:早期网络不是一群人坐在一起设计“未来互联网”。很多时候,他们是在一间实验室里解决眼前的文件、打印、备份和计算资源共享。

历史的真相经常没那么宏大,但更有用。

它有效,因为它主动放弃了很多东西

Chaosnet 明显受 Xerox PARC Ethernet 影响:多个节点竞争访问一根 cable,也就是文档里的 ether;包发出去,其他节点判断要不要收。它的软件协议也借鉴了 Ethernet、TCP、ARPANET 的一些想法。

但重点不是给它排族谱。

Ethernet、ARPANET、TCP 面向的问题更宽。Chaosnet 的目标更窄:服务一个机构内部的高速局域通信。它没有把自己装成通用答案。

对照对象更关心什么Chaosnet 的取舍
Xerox PARC Ethernet局域网介质访问与共享电缆借鉴共享介质思路,服务 Lisp Machine 环境
ARPANET远距离、跨机构网络通信不把长距离当目标
TCP更通用的端到端通信抽象借鉴部分思路,但保持本地场景的低开销
Chaosnet实验室内部高速资源共享为简单和性能砍掉非必要能力

它主动放弃的东西,今天看甚至有点“不完整”。

放弃的需求现实约束
长距离通信目标只是本地网络
低速链路会拖累简单高速设计
高噪声链路不为极端错误率支付复杂性成本
多路径局域网内暂不需要复杂路由能力
多级服务对当时目标场景不是关键功能
网络层内建安全通信更倾向考虑端到端加密,不把功能堆在网络里

这才是刀口。

Chaosnet 的性能思路很朴素:用高速传输介质,再用低开销协议把它吃干榨净。它靠的不是复杂算法炫技,而是别让协议本身把介质能力消耗掉。

算法不能蠢到不能用,也不能复杂到拖垮系统。这个判断放到今天仍然硬。

很多系统不是死在目标太小,而是死在需求太全。每个会议都塞进一个“以后可能需要”。权限、兼容、安全、审计、多租户、跨地域、高可用、插件市场,全都合理。合在一起,产品像一辆挂满救生艇的自行车,看着安全,骑不动。

“有所不为,而后可以有为。”这句话用在 Chaosnet 上并不文绉绉。它的强,正来自它承认自己只是局域网。

今天该学的不是复古,而是边界感

我更在意 Chaosnet 留下的工程姿势:先确认用户在哪里、线缆有多长、节点有多少、故障怎么查,再决定协议该复杂到什么程度。

这对今天做 AI 基础设施、开发平台、企业软件的人更直接。

架构师看到这里,不该只感慨“老系统真优雅”。更实际的动作是:在设计评审里把需求分成当前必须、近期可能、远期想象。当前场景只需要几十个节点,就别先按全球网络写架构;只跑机构内网,就别把跨地域复杂路由当默认前提。

产品经理和技术负责人也一样。别一上来就把“开放生态、全场景接入、统一平台”写满路线图。先问清楚:第一批用户到底在共享什么资源?他们最不能忍的是延迟、成本、权限混乱,还是运维难查?

如果答案还没稳定,采购可以慢一点,平台迁移也可以慢一点。先做小范围验证,比一口气买进一套“全能力平台”更诚实。

读者类型可以立刻做的事
网络史和系统工程读者把 Chaosnet 当作局部最优设计看,不要误读成互联网替代方案
架构师在设计评审中明确“不支持什么”,并写进边界条件
产品经理 / 技术负责人延后过早平台化,先验证核心场景的性能、故障定位和维护成本

接下来最该观察的,也不是谁又复刻了 Chaosnet。那没有意义。

真正该看的是:一个系统在变大之前,有没有写清自己的边界;在喊通用之前,有没有证明自己能把一个窄场景跑稳;在谈生态之前,有没有把故障定位、延迟、成本这些脏活做扎实。

早期铁路也是这样。很多线路一开始不是为了“改变全国交通”,而是为了把矿区、港口、工厂接起来。不完全一样,但相似处在于:有效的基础设施,常常先服务一个具体流量,再谈扩张。

Chaosnet 没有现代互联网的宏大能力,也不该被神化。它目前能给我们的证据很克制:一两公里、几十台节点、机构内部资源共享。

可正因为克制,它才像一面镜子。今天太多平台喜欢先把边界说没,再把复杂性说成先进性。

这套话术听多了,会忘记一个朴素事实:系统不是靠口号变强的。边界清楚,才知道该优化什么;边界模糊,所有功能都会争夺同一份工程预算。