0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

NFS到底是怎么工作的

阿铭linux 来源:阿铭linux 2023-02-10 16:57 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

NFS介绍

NFS是Network File System的缩写,NFS最早由Sun公司开发,分2,3,4三个版本,2和3由Sun起草开发,4.0开始Netapp公司参与并主导开发。NFS数据传输基于RPC协议,RPC为Remote Procedure Call的简写。

0837745c-a862-11ed-bfe3-dac502259ad0.png

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)里。

0851705a-a862-11ed-bfe3-dac502259ad0.png

② 用户在NFS客户端上发出存取NFS文件请求,这时NFS客户端的RPC服务就会通过网络向NFS服务器端的RPC服务的111端口发出NFS文件存取功能的询问请求。

086cf370-a862-11ed-bfe3-dac502259ad0.png

③ 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
    RPC
    +关注

    关注

    0

    文章

    114

    浏览量

    12309
  • NFS
    NFS
    +关注

    关注

    1

    文章

    57

    浏览量

    27346

原文标题:NFS到底是怎么工作的?

文章出处:【微信号:aming_linux,微信公众号:阿铭linux】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    NFS40系列电源模块:满足关键业务连续性的嵌入式电源解决方案

    NFS40系列电源模块:满足关键业务连续性的嵌入式电源解决方案 在电子设备的设计中,电源模块的性能和稳定性至关重要。NFS40系列电源模块作为一款专注于嵌入式应用的电源产品,为商业关键业务的连续性
    的头像 发表于 04-27 14:40 156次阅读

    UPS 整流与逆变原理深度解析:不间断电源的核心技术到底是什么?

    到底如何工作、为什么能做到市电与电池之间无缝切换、电力从输入到输出经历了怎样的变化。事实上,UPS所有功能的实现,都离不开两个最基础、最核心的技术环节——整流与逆
    的头像 发表于 03-16 09:25 484次阅读
    UPS 整流与逆变原理深度解析:不间断电源的核心技术<b class='flag-5'>到底是</b>什么?

    UPS 整流与逆变原理深度解析:不间断电源的核心技术到底是什么?

    了解它内部到底如何工作、为什么能做到市电与电池之间无缝切换、电力从输入到输出经历了怎样的变化。 事实上,UPS 所有功能的实现,都离不开两个最基础、最核心的技术环节 —— 整流 与 逆变 。可以说,没有整流与逆变,UPS 就无法实现不间断
    的头像 发表于 03-16 09:11 621次阅读
    UPS 整流与逆变原理深度解析:不间断电源的核心技术<b class='flag-5'>到底是</b>什么?

    MOS管到底是什么?和三极管、继电器有什么本质区别?

    MOS管到底是什么?和三极管、继电器有什么本质区别?在电子设备的“心脏”部位,藏着许多默默工作的“开关选手”。它们操控着电流的通断,决定着设备的效率与稳定性。其中,MOS管作为近年来高频
    的头像 发表于 01-07 13:46 1181次阅读
    MOS管<b class='flag-5'>到底是</b>什么?和三极管、继电器有什么本质区别?

    IGBT到底是什么?-从名称入手来带您了解

    对于工作需要用到IGBT、但从未专业学习过IGBT的人来说, IGBT到底是什么、它为什么叫IGBT、它的核心关键词是什么、要怎么理解它 等一系列问题并无法一次性在某个地方获取到,都需要查阅大量的资料,学习大量的基础才能有个初步的了解。 为了让更多的人在更少的时间内掌握I
    的头像 发表于 11-25 17:38 3171次阅读
    IGBT<b class='flag-5'>到底是</b>什么?-从名称入手来带您了解

    请问Keil中的map文件到底是什么意思?

    Keil中的map文件到底是什么意思?里面是如何进行相关执行操作的
    发表于 11-25 06:59

    单片机和嵌入式,到底是什么关系?

    的关系:什么是单片机?什么是嵌入式?它们到底是不是一回事?先说说大家最先听说的那个词——单片机(MCU)。单片机,全称是MicrocontrollerUnit,顾名思
    的头像 发表于 11-14 10:28 2263次阅读
    单片机和嵌入式,<b class='flag-5'>到底是</b>什么关系?

    单片机的差分信号到底是什么?

    差分信号到底是什么?通俗来讲,就是驱动端发送两个等值、反相的信号,接收端通过比较这两个电压的差值来判断逻辑状态“0”还是“1”。 差分信号的产生是由输入源发出信号后经过缓冲器和倒相器后,所产生
    发表于 11-12 06:44

    飞凌嵌入式ElfBoard-常用的网络服务的搭建之NFS服务搭建

    在嵌入式Linux开发中,需要在Linux主机编写程序代码,然后编译程序,生成的二进制程序文件要传输到目标机上才能调试、运行。那么如何更快、更便捷地传输文件,提高开发工作的效率呢?NFS无疑是最好
    发表于 10-22 09:23

    IEC 到底是什么?为什么它能影响全球?

    IEC 到底是什么?为什么它能影响全球?
    的头像 发表于 09-04 17:07 4046次阅读

    浮思特 | 红外激光模组工作原理:科技的神奇之处

    在现代科技快速发展的今天,红外激光模组作为一种重要的光电设备,逐渐走进了我们的生活和工作中。无论是在医疗、安防还是工业领域,红外激光模组都扮演着不可或缺的角色。那么,红外激光模组到底是如何工作的呢
    的头像 发表于 08-05 09:58 907次阅读
    浮思特 | 红外激光模组<b class='flag-5'>工作</b>原理:科技的神奇之处

    晶振的 “负载电容” 到底是什么

    负载电容,到底是什么? 负载电容,简单来说,是指晶振的两条引线连接IC块内部及外部所有有效电容之和,我们可以将其看作晶振片在电路中串接的电容。从更专业的角度讲,它是为了使晶振能够在其标称频率下稳定
    的头像 发表于 07-25 16:26 1278次阅读

    请问编译纯rtos到底是选择Linux+rtos的sdk编译only rtos还是直接使用rtos sdk?

    编译纯rtos到底是选择Linux+rtos的sdk编译only rtos还是直接使用rtos sdk?
    发表于 07-11 07:22

    【EASY EAI Orin Nano开发板试用体验】--WiFi连接与nfs共享

    本篇讲述开发板连接WIFI,并与NFS服务器挂载。 一.WIFI连接 1.查看开发板连接nmcli connection showls /etc/NetworkManager
    发表于 06-29 21:56

    【EASY EAI Orin Nano开发板试用体验】安装nfs服务器

    【前言】 在灵眸科技的开发教程中,需要配置nfs服务器,方便以后与win的文件交换。 1、执行sudo apt update 2、执行sudo apt install
    发表于 06-22 17:32