NFS到底是怎么工作的

nfs介绍
nfs是network file system的缩写,nfs最早由sun公司开发,分2,3,4三个版本,2和3由sun起草开发,4.0开始netapp公司参与并主导开发。nfs数据传输基于rpc协议,rpc为remote procedure call的简写。
nfs应用场景很简单,当多台机器需要共享一份数据时,就用nfs。如上图,sdb1为a机器上的一块盘,a机器把sdb1上的一个目录共享出来了,然后b机器和c机器呢通过nfs将a机器共享的目录挂载到了它们自己的服务器上,看起来就像是它们本地的一块盘,此时无论是a机器,还是b机器,又或者是c机器,到这个挂载的目录里去写文件,另外的两台机器都会跟着写。
nfs工作原理
首先,说一个结论:nfs依赖rpc,rpc存在的意义是为了解决nfs服务端和客户端通信多端口并且端口不固定的问题。也就是说,nfs的服务端和客户端通信时,并不是只有一个端口,因为毕竟需要数据传输,数据的读、写,它们中间复杂得很,一个端口做不了这么多事情,所以就需要很多端口来实现这些操作。 最麻烦的是,端口还不固定,所以就得有一个中心,来记录这些不固定的端口,怎么记录呢,这里就用到了rpc。 当访问程序通过nfs客户端向nfs服务器端存取文件时,其请求数据流程大致如下: ① nfs服务启动时,首先会将端口信息登记到nfs服务端的rpc服务(也就是图中的rpcbind)里。
② 用户在nfs客户端上发出存取nfs文件请求,这时nfs客户端的rpc服务就会通过网络向nfs服务器端的rpc服务的111端口发出nfs文件存取功能的询问请求。
③ nfs服务端的rpc服务找到对应已注册的nfs端口后,通知nfs客户端rpc服务。 ④ nfs客户端获取到正确的端口,并与nfs 服务建立连接,然后开始存取数据由于nfs的各项功能都需要向rpc服务注册,所以只有rpc服务才能获取到nfs服务的各项功能对应的端口号、pid、nfs在主机所监听的ip等信息,而nfs客户端也只能通过向rpc服务询问才能找到正确的端口。也就是说,nfs需要有rpc服务的协助才能成功对外提供服务。 因此,无论是nfs客户端还是nfs服务器端,都需要首先启动rpc服务,nfs服务必须在rpc服务启动之后启动,客户端无须启动nfs服务,但需要启动rpc服务。

HomeKit和Siri语音控制集成在智能电视上的工作方式
触觉手套:介绍几种具有代表性的VR手套
电线距离长短对电流大小有影响吗
怎样正确选择电磁流量计的材质
什么是智能手环_智能手环有什么作用
NFS到底是怎么工作的
人脸识别摄像机应用解析
华为雪上加霜!三星和SK已确定暂停供应芯片等产品
锂离子电池电解液是什么?
气动点焊机焊接原理
16张经典机械动图快来收藏吧
功率放大器驱动NKT可调谐光源的实验说明
除了使用打鼾呼吸机之外还有哪些方法止鼾
曲面屏是什么,它和电容屏有什么区别
外骨骼康复机器人给人们带来的便利
自制负离子发生器教程(三种电路设计方案分享)
华为P10怎么样?华为P10 Plus评测:三大看点真是让人爱不释手
富士通分享三大存储技术 各具独特堪称黑马技术
三星回归代理模式,能否借助5G技术实现翻盘
三种通用有源滤波器类型及构建方法