《操作系统导论》第 48 章:Sun 的网络文件系统 (NFS) - 深度知识架构

1. 核心矛盾 (The Crucial Problem)

在分布式网络环境中,服务器随时可能宕机重启,如何设计一套分布式文件系统协议,使得客户端能透明、高性能地访问远程文件,同时实现服务器的“极速、极简崩溃恢复”?

2. 核心概念 (Core Concepts)

3. 逻辑演进 (Logical Evolution)

为了在网络环境中构建一个能抵御服务器崩溃的文件系统,系统架构师进行了如下的推演:

4. 机制与策略 (Mechanisms vs. Policies)

5. 设计折衷 (Design Trade-offs)

6. 关键洞察 (Key Insights)


导师的下一步建议: 我们刚刚看到 NFS 是如何利用“无状态”哲学打造出了极易恢复的文件服务器的。但是,NFS 有一个致命的弱点:当成千上万个客户端同时向服务器发送查询请求(哪怕只是轮询 GETATTR 检查缓存有没有过期),服务器的 CPU 和网卡依然会瞬间被压垮。

这导致 NFS 的扩展性有明显的上限。为了解决这个”客户端规模扩展”的问题,卡内基梅隆大学(CMU)的研究人员走了一条与 NFS 完全相反的路,设计出了能支持海量客户端的 Andrew 文件系统 (AFS, 第49章)

MOC · 下一章:Ch49 AFS