在 @mengite 的 Telegram 频道中看到转发的信息,优质、快速和廉价三者不可兼得的道理,在1996年4月1日(!)的互联网工程任务组(IETF)征求意见稿 RFC 1925中就已经提到,作者是 Ross Callon。
我试着将主要内容翻译如下,如有错误,欢迎指出:
网络十二真理
本备忘录为互联网社群提供信息。本备忘录没有规定任何类型的互联网标准。允许无限制分发本备忘录。
本备忘录记录了服务于互联网社群网络工作的基本真理。本备忘录没有规定标准,然而所有标准都必须隐含地遵循这些基本真理。
本备忘录中描述的真理源于许多人在很长一段时间内的广泛研究,其中一些人并未打算为这项工作出力。编辑只收集了这些真理,并感谢网络社群的最初阐明。
此征求意见稿提供有关所有网络基础真理的信息。这些真理通常适用于网络工作,并不仅限于 TCP/IP、国际互联网或网络社群的任何其他子集。
-
它必须得管用。
-
无论如何努力,无论优先级如何,你都无法提高光速。
2a. 无论怎么努力,都不能在不到9个月的时间内生出孩子。试图加快速度可能会事与愿违,绝不会如愿以偿。 -
如果推力足够,猪也能飞。但这可不是好主意。天知道猪会落在哪里,待在飞猪下方太危险。
-
生活中某些事物只有亲身体验才能欣赏或理解。那些既不构建也不运营网络的人,永远不会理解网络中的某些东西。
-
总是可以用一个复杂且内部相互依赖的统一方案,解决多个单独的问题。大多数时候,这是个坏主意。
-
转移问题(例如,将问题转移到网络体系架构的其他地方)比解决问题简单。
6a. 总是可以通过新增间接的层次来转移问题。 -
它总是遵循:
7a. 优质、快速和廉价只能任选其中两项(不可能同时满足三项)。 -
它比你想象的要复杂得多。
-
所有资源都永远不够用。
-
没有万能的解决方案。
-
每个旧的想法都会换个名字或表现形式再次出现,无论这种新瓶装旧酒的套路是否管用。
11a. 参见 6a。 -
设计协议时,无一分可减才是完美,而非无一分可增。