对比分析各个NFS版本的特点

网络 网络管理
下面我们来对NFS版本的内容进行一下分析和介绍。首先我们要清楚目前NFS已经有了4个版本了。那么这四个版本的特点都有些什么区别呢?

NFS是网络文件系统。随着网络的不断发展,这个协议版本也逐渐增多。现在已经有了4.1的***版本了。那么对于这些版本信息,你是否有点不知所措呢?没关系,这里我们来对NFS版本内容进行一下解读吧。

1、NFS—Network File System

2、由Sun Microsystems公司在1985年推出

3、是一种通用的文件共享方案

4、linux从1.2系列内核开始支持NFS版本2,在2.2.18版内核后支持NFS版本3 (我最近使用的2.14.3内核,发现已经支持NFS版本4了)

NFS协议从诞生到现在为止,已经有多个版本,如NFS V2(rfc1094),NFS V3(rfc1813)(***的版本是V4(rfc3010)

5、NFS版本3比NFS版本2运行速度更快,版本3的软件一定能与版本2实现互操作

6、V3相对V2的主要区别:

1>文件尺寸

V2***只支持32BIT的文件大小(4G),而NFS V3新增加了支持64BIT文件大小的技术.

2>文件传输尺寸

V3没有限定传输尺寸,V2最多只能设定为8k,可以使用-rsize and -wsize 来进行设定.

3>完整的信息返回

V3增加和完善了许多错误和成功信息的返回,对于服务器的设置和管理能带来很大好处.

4>增加了对TCP传输协议的支持

V2只提供了对UDP协议的支持,在一些高要求的网络环境中有很大限制,V3增加了对TCP协议的支持

5>异步写入特性

异步写入特性(v3新增加)介绍:

NFS版本3 能否使用异步写入,这是可选择的一种特性.NFS V3客户端发发送一个异步写入请求到服务器,在给客户端答复之前服务器并不是必须要将数据写入到存储器中(稳定的).服务器能确定何时去写入数据或者将多 个写入请求聚合到一起并加以处理,然后写入.客户端能保持一个数据的copy以防万一服务器不能完整的将数据写入.当客户端希望释放这个copy的时候, 它会向服务器通过这个操作过程,以确保每个操作步骤的完整.异步写入能够使服务器去确定***的同步数据的策略.使数据能尽可能的同步的提交何到达.与V2 比较来看,这样的机制能更好的实现数据缓冲和更多的平行(平衡).而NFS V2的SERVER在将数据写入存储器之前不能再相应任何的写入请求.

6>改进了SERVER的mount性能

7>有更好的I/O WRITES 性能.

9>更强网络运行效能,使得网络运作更为有效.

10>更强的灾难恢复功能.

7、V4相对V3的改进:

1>改进了INTERNET上的存取和执行效能

2>在协议中增强了安全方面的特性

3>增强的跨平台特性

8、NFS运行在Sun的RPC协议之上,因此既可使用UDP也可用TCP作为下层的传输协议,但TCP具有更多的优势,由客户机决定选择TCP还是UDP

linux上的大多数NFS版本服务器不支持用TCP来传输

9、NFS文件上锁是个棘手问题,NFS服务器是无状态的,它们不知道哪台机器正在使用某个特定的文件

10、rquotad磁盘配额的方法已经过时

11、cookies与无状态安装

12、共享文件系统命名规则:***提供一种深层次的结构(如:/home/share1),保证客户机的根目录下不会混乱

13、安全:禁止访问NFS使用的TCP和UDP 2049端口

阻止对portmap(该进程监听TCP和UDP的111端口)守护进程的访问

14、NFS版本的服务器启动脚本名字

RedHat /etc/init.d/nfs

SuSE /etc/init.d/nfsserver

Debian /etc/init.d/nfs-kernel-server /etc/init.d/nfs-common

15、mountd服务用于安装请求

nfsd是NFS运行的守护进程(如果客户机要导出自身文件系统,也必须运行nfsd)

通过uptime查看平均负载,调整nfsd线程的数目

通过nfsstat检查nfsd线程数量可能引发的性能问题

通过netstat -s监测UDP套接口溢出数目,增加nsfd线程数量使溢出数目降为0,再适当增加几个

可以编辑启动脚本来改变nfsd进程的数量

16、客户机安装文件系统和访问文件的过程是完全不同的,使用不同的协议,由不同的守护进程来提供服务:

nfsd(或rpc.nfsd) 用于文件服务

mountd(或rpc.mountd) 用于安装请求

portmap 使用SUN的RPC协议

责任编辑:佟健 来源: 网络整理
相关推荐

2018-01-26 14:29:01

框架

2018-01-21 14:11:22

人工智能PaddlePaddlTensorflow

2023-05-14 22:00:01

2010-06-08 11:15:43

OpenSUSE Ub

2010-07-20 16:16:21

SDH

2016-10-18 21:10:17

GitHubBitbucketGitLab

2010-07-30 13:17:33

NFS V3

2010-07-14 10:26:58

IMAP协议

2017-05-05 10:15:38

深度学习框架对比分析

2017-03-20 14:32:57

2010-06-24 21:35:33

2010-08-03 16:17:17

NFS协议

2018-06-07 09:45:08

2013-01-17 16:11:11

数据中心交换机网络虚拟化

2021-05-18 10:18:15

Java

2015-11-16 15:37:13

编排工具集群管理对比

2019-07-03 10:58:22

Kubernetes网络插件

2019-12-26 16:21:59

ReactJSAngularJSVue.js

2009-02-16 17:21:46

2020-11-18 09:33:03

数据分析业务问题
点赞
收藏

51CTO技术栈公众号