首页 > 其他分享 >NFS到底是怎么工作的?

NFS到底是怎么工作的?

时间:2023-03-31 13:11:17浏览次数:36  
标签:怎么 服务 到底 端口 RPC 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服务。

标签:怎么,服务,到底,端口,RPC,NFS,机器,客户端
From: https://www.cnblogs.com/msjhw/p/17275963.html

相关文章

  • Linux系统下NFS服务器的配置(实训)
    实训目的:掌握Linux系统中NFS服务的安装,启动与停止;掌握exports配置文件的操作;掌握用expoets命令测试NFS服务器的方法。实训环境:网络环境中装有CentOS7操作系统的计算机。实训步骤:第1步:NFS规划。1)将本地文件系统的/home/mp3目录共享,mary客户机对该目录具有读写限权,其他所有用......
  • 要么忙着生,要么忙着死。Dropbox怎么选择?
    Dropbox是当今硅谷最热门的创业公司,但这种热度并不意味着Dropbox的未来一片坦途。两年前,Dropbox的创始人DrewHouston与乔布斯之间有过一段有趣的对话。当时乔布斯微笑着说,苹果准备接管Dropbox的市场。他有一句话让Houston记忆犹新:Dropbox是一项功能,而不是一个产品。乔......
  • 直播回顾 | 点击率提升400%,Ta是怎么做到的?
    Discovery第18期直播已于3月30日圆满结束,本期直播邀请天眼查做客直播间,从天眼查与华为Push用户增长服务合作历程切入,聚焦用户增长,分享提升应用活跃度和渠道ROI的经验与见解。一起来回顾本期精彩内容吧!【精彩对话】Q1:天眼查为什么选择华为Push用户增长服务实现拉新、促活和转......
  • 一个对象的内存布局是怎么样的?
      「1.对象头」:对象头又分为 「MarkWord」 和 「ClassPointer」 两部分。「MarkWord」:包含一系列的标记位,比如轻量级锁的标记位,偏向锁标记位,gc记录信息等等。「ClassPointer」:用来指向对象对应的Class对象(其对应的元数据对象)的内存地址。在32位系统占......
  • 一个对象的内存布局是怎么样的?
      「1.对象头」:对象头又分为 「MarkWord」 和 「ClassPointer」 两部分。「MarkWord」:包含一系列的标记位,比如轻量级锁的标记位,偏向锁标记位,gc记录信息等等。「ClassPointer」:用来指向对象对应的Class对象(其对应的元数据对象)的内存地址。在32位系统占......
  • MySQL数据库怎么创建表?MySQL数据库基础知识
    MySQL是一个关系型数据库管理系统,由瑞典MySQLAB公司开发,目前属于Oracle旗下产品。MySQL最流行的关系型数据库管理系统,在WEB应用方面MySQL是最好的RDBMS(RelationalDatabaseManagementSystem,关系数据库管理系统)应用软件之一。MySQL是一种关联数据库管理系统,关联数据库......
  • 谷歌秒收录方法,谷歌不收录怎么办
    作为全球最大的搜索引擎之一,谷歌在网站运营者心中占有举足轻重的地位。快速被谷歌收录意味着更高的知名度和更多的访问量。因此,许多网站运营者都关注谷歌秒收录方法。本文将为您介绍谷歌秒收录的方法以及遇到谷歌不收录时该如何应对。一、谷歌秒收录方法要实现谷歌秒收录,可以尝试以......
  • docker启动失败后怎么查看日志
    方法一:dockerlogs--since30mcontainer#查看30分钟日志,容器成功失败都可以查看,container表示容器名称或ID方法二:dockerinspect--format'{{.LogPath}}'container#查询容器日志文件目录vi/var/lib/docker/containers/5338f536922596e5503e8715e0a9d5de9f14436177......
  • 如何给驱动程序签名?怎么做微软WHQL认证?
    从WindowsVista开始,基于x64的Windows版本要求在内核模式下运行的所有软件(包括驱动程序)进行数字签名才能加载。未签名的驱动程序被系统阻止,数字签名可确保驱动程序已......
  • 关于服务器越来越卡顿,我们应该怎么办?
    在购买服务器之后,都会遇到一些情况。比如说操作时服务器特别卡,影响进度,这种情况是非常常见的。这样并不代表服务器不好,只是服务器空间占用的内容多,以及宽带的大小不足等等......