现在的位置: 首页 > 综合 > 正文

分布式文件系统之NFS AFS

2018年03月16日 ⁄ 综合 ⁄ 共 1488字 ⁄ 字号 评论关闭

      NFS,AFS是第一代分布式文件系统的代表,其目的是提供标准接口和远程文件访问,更多的关注访问的性能和数据的可靠性。NFS与AFS都是分布式的C/S文件系统。

    NFS的实质在于用户间计算机的共享。用户通过NFS客户端接入网络,可以访问同一网络中其它计算机系统的硬盘(该计算机为NFS服务端)。NFS客户端可以mount远端文件系统的部分或全部到本地,访问这些文件系统就像访问在本地磁盘上的文件系统一样。

     NFS访问数据的速度以接近采用本地磁盘的速度为目标,NFS的性能受限于:

  • 网络的最大吞吐量
  • 服务端硬件性能:网卡,磁盘等
  • 服务端缓存大小,TCP/IP的配置
  • 服务端服务实例的运行个数
  • 客户端请求的网络文件数
  • 客户端的系统性能
  • 其它运行在客户或服务端上与NFS竞争资源的进程

    在实际运行中,NFS服务端压力较大。NFS客户端的性能直接取决于服务端的性能和网络性能。如果遇到客户端性能很差,需要从上面两个方面进行检查。

    NFS的服务过程如下:

    NFS系统读写流程如下:

    NFS客户端将用户级别命令转化为RPC;NFS服务端将RPC转换为用户级别命令。

    NFS的主要缺点:文件服务器的定位对客户端非透明,即客户端需要知道服务端的确切地址(挂载点),这也导致了其可扩展性差,维护困难,优点是发展多年,linux内核直接支持,使用简单方便。

    AFS(Andrew File System)文件系统主要用于管理分部在不同网络节点上的文件。AFS采用安全认证和灵活的访问控制提供一种分布式的文件和授权服务,该服务可以扩展到多个客户端。

     AFS系统具有以下特点:

  • 服务端的功能可以分部到多台服务器上以均衡负载,增加冗余和容错。多个服务器组成一个单元(cell)。一个存储节点在同一时间只能属于一个单元,而一个单元可以管理数个存储节点。
  • 数据可以在服务器间进行移动和复制。这些操作对最终用户是透明的,最终用户不感知。
  • 系统运行时,某个服务器可以出现故障下线和恢复上线的情景。
  • 所有的客户端都有几乎全部的管理员权限。
  • 可以扩展到更多的客户端。
  • 所有的客户端对整个单元都有相同的视图。
  • 灵活的访问控制:可以通过用户,群,或IP进行控制
  • 对于只读卷可以进行复制以提高冗余
  • 使用Kerberos身份验证来识别用户并授予文件访问权限。不信任客户端计算机
  • 授权过程加密。可在传输过程中加密文件内容。
  • 客户端软件可用于几乎所有的Unix平台包括Linux和Mac
    OS-X,再加上微软Windows(2000年及以后版本)
  • 有通向Windows
    9x和Mac 系列,NFS系统的网关
  • 跨单元操作是可能的,AFS是一个全局的文件系统

    AFS系统概图如下:

AFS使用过程如下:

    AFS与NFS不同,AFS提供给用户的是一个完全透明,永远唯一的逻辑路径。因而其具有跨平台,分布式的特点。但是由于AFS使用本地文件系统来缓存最近被访问的文件块,访问一个在本地的AFS文件由于需要附加一些耗时的操作,比直接访问本地的其它文件要慢很多。AFS为读操作做了优化,写操作很复杂,是一个读快写慢的文件系统,不能提供很好的读写并发能力。

参考:

1.http://osr507doc.sco.com/en/PERFORM/NFS_rsc.html

2.http://www.read.seas.harvard.edu/~kohler/class/05f-osp/notes/lec18.html

3.http://caligari.dartmouth.edu/classes/afs/print_pages.shtml

抱歉!评论已关闭.