存储大师班:NFS 的诞生与成长

作者| QingStor 黄蒙

我们为什么需要 “网络文件协议”

存储文件是大家日常工作生活中最常见的需求,随着文件数量和占用存储空间的上升,以及在一定范围内共享访问文件的需求产生,我们自然需要把存储文件的工作从单个计算机设备中剥离出来,作为一个单独的服务资源(或物理硬件)来对外提供存储功能,提供更大的容量的同时,为多个终端通过网络共享访问。

这里提到的存储设备就是我们常说的 NAS(Network Attached Storage:网络附属存储)。

存储大师班:NFS 的诞生与成长_第1张图片

常见 NAS 架构

而终端通过网络来共享访问 NAS,需要标准的协议规范。NFS 就是其中最重要也是应用最广泛的协议标准之一(其它流行的网络文件协议还有 SMB[1] 协议,后续会有专门的文章进行介绍,尽请期待)。今天我们就来聊聊 NFS 协议。

不断发展的 NFS

1. 简单好用的无状态协议诞生

NFS 第一次出现在我们的视野中,是在 1985 年。NFS version2 作为 SunOS 2.0 的组件正式发布。所以在当时把它叫做 “Sun 网络文件系统” 可能更为贴切。另外,你没有看错,第一个正式对外发布的版本就是 v2 版本(v1 版本从未对外正式发布,这也是我们从不讨论 NFS v1 的原因)。

不过 NFS 并不是最早的网络文件系统,彼时已经有一些更早的网络文件系统存在,比如 UNIX SVR3 系统中包含的 RFS(Remote File System)[2] RFS 已经引入了 RPC(Remote Procedure Call)概念,并成为 NFS v2 的借鉴的范本。但 RFS 也有自己明显的问题,比如其为每个客户端打开文件记录状态(即有状态协议),所以很难应对服务端宕机或重启的情况。NFS v2 为了在设计层面很好的解决 RFS 的缺陷,设计成了一个完全无状态的协议。

1995 年,NFS v3 正式发布。此时 NFS 协议的开发已经不再完全依赖 Sun 公司,而是多家公司共同主导完成. NFS v3 包含众多优化,但大多数可以认为是性能层面的优化。总体看来

你可能感兴趣的:(分布式存储,云计算)