NFS 演进

        NFS是一种网文件系,从1985年推出至今,共布了3个版本:NFSv2NFSv3NFSv4NFSv4包含两个次版本NFSv4.0NFSv4.1经过20多年展,NFS发生了非常大的变化,最大的变化就是推动者从Sun变成了NetAppNFSv2NFSv3基本上是Sun起草的,NetAppNFSv4.0参与来,并且主NFSv4.1标准的制定过程,而SunOracle了。

编号        版本              RFC              时间                    

1              NFSv2           rfc1094        19893        27

2              NFSv3           rfc1813        19956        126

3              NFSv4.0        rfc3530        20034        275

4              NFSv4.1        rfc5661        20101        617

 

1. NFSv2

NFSv2是第一个以RFC形式布的版本,实现了基本的功能。

 

2. NFSv3

NFSv31995布的,这时NFSv2经发布了6年了,NFSv3修正了NFSv2的一些bug。两者有如下一些差,但是感没有本的差

(1) NFSv2对每次读写操作中传输数据的最大长度进行了限制,上限值为8192NFSv3取消了个限制。

(2) NFSv3对文件名称长度进行了限制,上限值为255NFSv3取消了个限制。

(3) NFSv2对文件长度进行了限制,上限值为0x7FFFFFFFNFSv3取消了个限制。

(4) NFSv2中文件句柄度固定32NFSv3中文件句柄度可,上限64

(5) NFSv2只支持同步写,如果客端向服器端写入数据,服器必将数据写入磁中才能答消息。NFSv3支持异步写操作,服器只需要将数据写入存中就可以答信息了。NFSv3增加了COMMIT请求,COMMIT请求可以将服务器缓存中的数据刷新到磁盘中

(6) NFSv3增加了ACCESS请求,ACCESS用来检查访问权限。因器端可能uid映射,因此客端的uidgid不能正确反映用访问权限。NFSv2理方法是不管访问权限,直接返送求,如果没有访问权限就出NFSv3中增加了ACCESS请求,客户端可以检查是否有访问权限

(7) 一些整了参数和返回信息,NFSv3NFSv2发布的间隔有6年,经过长期运行可能NFSv2某些求参数和返回信息需要改

 

3. NFSv4.0

相比NFSv3NFSv4发生了比较大的变化,最大的变化是NFSv4有状了。NFSv2NFSv3都是无状态协议,服区端不需要维护端的状信息。无状态协议的一个优点在于灾难恢复,当服务器出现问题后,客户端只需要重复发送失败请求就可以了,直到收到服务器的响应信息。但是某些操作必须需要状态,如文件锁。如果客户端申请了文件锁,但是服务器重启了,由于NFSv3无状,客端再操作可能就会出了。NFSv3需要NLM协助才能实现文件锁功能,但是有的时候两者配合不够协调。NFSv4设计成了一种有状态的协议,自身实现了文件锁功能,就不需要NLM协议了。NFSv4NFSv3的差如下:

(1) NFSv4设计成了一种有状态的协议,自身实现了文件锁功能和获取文件系点功能,不需要NLMMOUNT协议协助了

(2) NFSv4增加了安全性,支持RPCSEC-GSS身份认证

(3) NFSv4只提供了两个NULLCOMPOUND,所有的操作都整合COMPOUND中,客端可以根据实际请求将多个操作封装到一个COMPOUND请求中,增加了灵活性

(4) NFSv4文件系的命令空间发生了化,服器端必须设置一个根文件系(fsid=0),其他文件系在根文件系出。

 

(5) NFSv4支持delegation。由于多个客端可以挂同一个文件系了保持文件同步,NFSv3中客端需要常向服求,求文件属性信息,判断其他客端是否修改了文件。如果文件系是只的,或者客文件的修改不繁,繁向服求文件属性信息会降低系性能。NFSv4可以依靠delegation实现文件同步。当客户端A打开一个文件,服器会分配A一个delegation。只要客A具有delegation,就可以认为与服器保持了一致。如果另外一个客B访问同一个文件,器会暂缓B访问请求,向客A发送RECALL请求。当客户端A接收到RECALL请求时将本地缓存刷新到服务器中,然后将delegation返回服器,这时器开始理客B求。

(6) NFSv4修改了文件属性的表示方法。由于NFSSun的一套文件系设计之出NFS文件属性参考了UNIX中的文件属性,可能Windows中不具某些属性,因此NFS对操作系统的兼容性不太好。NFSv4将文件属性划分成了三

Mandatory Attributes: 这是文件的基本属性,所有的操作系统必须支持这些属性

Recommended Attributes: 这是NFS的属性,如果可能操作系尽量实现这些属性。

Named Attributes: 这是操作系统可以自己实现的一些文件属性

 

4. NFSv4.1

        NFSv4.0相比,NFSv4.1最大的化是支持并行存了。在以前的协议中,客端直接与服接,客端直接将数据传输到服器中。当客端数量时这种方式没有问题,但是如果大量的客端要访问数据NFS器很快就会成一个瓶,抑制了系的性能。NFSv4.1支持并行存,服器由一台元数据服(MDS)和多台数据服(DS)构成,元数据服器只管理文件在磁中的布局,数据传输在客端和数据服器之直接行。由于系中包含多台数据服器,因此数据可以以并行方式访问,系吞吐量迅速提升。

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值