J. H. Saltzer, D. P. Reed, and D. D. Clark. 1984. End-to-end arguments in system design. ACM Transactions on Computer Systems 2, 4 (Nov. 1984), 277–288.
一些说明
- functions:指的是functionality,而非编程中某一具体函数
- modules:指的是layers,而非编程语言中的组织架构或库
- 分层架构 a layered architectural style
- 基本思想
组件(components)以分层的方式从上到下排列,在层 Lₙ 的组件可以向层 Lₘ 的组件发起downcall(n < m)(即上层可以对下层进行调用),通常 Lₙ 会期待从 Lₘ 获得一个响应。
此外,通过之前注册的callback,层 Lₘ 的组件可以向层 Lₙ 的组件发起upcall。
- 基本思想
End-to-End Argument 端到端论证
内容
End-to-End:从一个端点到另一个端点的完整过程,通常涉及整个系统或网络的多个层级。
End-to-End Argument:有些功能只能在应用层“完全且正确地实现”,而在平台层(中间节点或底层系统)实现这些功能则是不可能的。
这种不可能性源于平台层可能只有部分信息——通俗说,平台层缺乏上下文,不像应用层可以