nfs原理分析

nfs原理分析

ID:21968289

大小:162.56 KB

页数:15页

时间:2018-10-21

nfs原理分析_第1页
nfs原理分析_第2页
nfs原理分析_第3页
nfs原理分析_第4页
nfs原理分析_第5页
资源描述:

《nfs原理分析》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、网络文件系统NFS的设计和实现江嘉治NFS简介NFS的设计和实现NFS实现过程中遇到的问题NFS与RFS的比较NFS简介NFS由SunMicrosystem公司提出并实现的是一个分布式文件系统采用C/S架构(提供文件为Server,获得文件服务者为Cilent)在Unix核心底层实现NFS简介设计原则:机器和操作系统平台独立Crash恢复透明操作在客户端保持Unix语义合理的性能设计和实现NFS文件系统主要分为三个部分:TheProtocol(网络协议)ClientSide(NFS客户端)ServerSide(NFS服务器)设计和实现流程图设计和实现客户端实现VFS会将其传递给

2、内核中的NFS实例NFS解释I/O请求并将其翻译为NFS程序(OPEN、ACCESS、CREATE、READ等等)只提供了Unix文件操作的部分接口设计和实现Mount协议(安装协议取得文件系统句柄)与NFS协议分开实现NFS是无状态协议,服务器不需要维护客户端信息,文件状态信息。每个RPC都是子维持的(每个请求包括了用户认证信息,句柄信息,数据大小等信息,如果Crash便于恢复)NFS协议可采用面向流的协议也可以采用面向数据报的协议NFS协议的实现设计和实现需求向上提交给NFS守护进程为需求标示出目标文件系统树并且VFS再次用于在本地存储中获取文件系统服务端的实现实现过程中遇

3、到的问题权限假如在NFS服务器上导出/test目录,该目录由NFS服务器上的用户user1和user2拥有,则NFS客户机上要有同样的用户user1和user2才能使用导出的目录。另外,我们可能不希望客户机上的root用户拥有NFS服务器上的root用户对/test目录的权限。1.将用户映射为用户nobody2.网络授权机制,用login的方式提供一个全网的uid命名使用文件句柄。主要目的是使得客户机和服务器的路径名语法隔离开来,NFS要求客户机完成所有对路径名的解释。当客户机要求对某个文件进行操作时,不能用全路径名指明该文件,而必须得到一个用于引用该文件的句柄。实现过程中遇到

4、的问题性能同步写(慢但保险),异步写,可配置read_ahead机制客户端的数据缓冲区增大UDPpackets并发和锁多个客户端如果同时向一个文件写入,如果一个写操作要涉及到多次RPC请求,因为RPC无状态无法保存锁,所以会出现数据混杂的情况实现过程中遇到的问题TimeSkew如果服务器的时间比客户端的时间要提早,在一些程序里面会出现修改时间与当前系统时间的冲突如ld,ranlib和emacs等。计划实现一个时间同步机制解决问题。NFS与RFS的比较NFS优势:1.RFS底层不是用RPC实现,无法自由选择选择传输协议,NFS可自由选择TCP或者UDP,可扩展性灵活性更高2.NF

5、SCrash更易于恢复。3.NFS跨平台,RFS只能在Unix上NFS劣势1.RFS100%实现了Unix文件系统的语义,NFS只实现了一部分2.RFS更小结论如果要一个小型的完全在Unix上运行的网络文件系统则选择RFS,如果要一个比较大的,跨机器类型,不同操作系统,混合协议的,则NFS是个更好的选择。关于NFS如何保持数据一致性的问题由于多个客户端可以挂载同一个文件系统,如何在多个客户端之间保持数据一致性是个非常麻烦的问题,NFSv2和NFSv3没有规定具体的方法,一般的做法是客户端不定期检查文件是否发生了冲突,比如读操作中在发起READ请求前可能要发起GETATTR请求,

6、判断本地缓存是否有效。在大规模系统中以及当客户端和服务器分布比较遥远时就会影响系统性能,因为GETATTR操作需要一定的执行时间。关于NFS如何保持数据一致性的问题NFSv4引入了一种机制保持文件缓存一致性,这种机制称为delegation。这种机制的基本原理是客户端A打开文件时服务器给客户端A颁发一个凭证,只要客户端A持有这个凭证就可以认为没有与其他客户端发生冲突,读写操作中就不需要发起GETATTR请求了。当客户端B试图访问同一个文件时,这两个客户端就发生了冲突。服务器先暂时不响应客户端B的请求,而是向客户端A发送RECALL请求。客户端A接收到RECALL请求后将缓存中的

7、数据刷新到服务器中,然后将凭证交还给服务器。这时服务器再响应客户端B的请求。以后两个客户端就按照NFSv2、NFSv3中的方法检查文件冲突。因此,这种机制适用于只读文件系统,或者客户端对数据修改不频繁的文件系统。

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。