速读原著-TCP/IP(网络文件系统)
第29章 网络文件系统
29.1 引言
本章中我们要讨论另一个常用的应用程序: N F S(网络文件系统),它为客户程序提供透明的文件访问。N F S的基础是Sun RPC:远程过程调用。我们首先必须描述一下 R P C。客户程序使用 N F S不需要做什么特别的工作,当 N F S内核检测到被访问的文件位于一个N F S服务器时,就会自动产生一个访问该文件的 R P C调用。
我们对N F S如何访问文件的细节并不感兴趣,只对它如何使用 I n t e r n e t的协议,尤其是U D P协议,感兴趣。
29.8 小结
R P C是构造客户-服务器应用程序的一种方式,使得看起来客户只是调用了服务器的过程。所有的网络操作细节都被隐藏在 R P C程序包为一个应用程序生成的客户和服务器残桩以及R P C库的例程中。我们显示了 R P C调用和应答报文的格式,并且提到了使用 X D R对传输的值进行编码,使得R P C客户和服务器可以运行在不同架构的机器上。
最广泛使用的R P C应用之一就是S u n的N F S,一个在各种大小的主机上广泛实现的异构的文件访问协议。我们浏览了 N F S和它使用U D P和T C P的方式。第2版的N F S协议定义了1 5个过程。
一个客户对一个 N F S服务器的访问开始于安装协议,返回给客户一个文件句柄。客户接着可以使用那个文件句柄来访问服务器文件系统中的文件。在服务器上,一次检查文件名的一个成员,返回每个成员的一个新的文件句柄。最后的结果就是要引用的文件的一个文件句柄,它可以在随后的读写操作中被使用。
N F S试图把它的所用过程都做成等幂的,使得如果响应报文丢失了,客户只需要重发一个请求。我们看到了服务器崩溃然后又重启动时,一个客户读服务器上的一个文件的例子。
速读原著-TCP/IP(网络文件系统)相关推荐
- 速读原著-TCP/IP(BOOTP示例)
第16章 BOOTP:引导程序协议 16.3 一个例子 让我们看一个用 B O O T P引导一个X终端的例子.图 1 6 - 3显示了t c p d u m p的输出结果(例中客户名为p r o t ...
- 速读原著-TCP/IP(tcpdump的输出)
A.4 tcpdump的输出 t c p d u m p的输出是"原始的".在本书中包含它的输出时,我们对它进行了修改以便阅读.首先,它总是输出它正在监听的网络接口的名字.我们把这 ...
- 速读原著-TCP/IP(UDP首部)
第11章 UDP:用户数据报协议 11.2 UDP首部 U D P首部的各字段如图11 - 2所示. 端口号表示发送进程和接收进程.在图 1 - 8中,我们画出了 T C P和U D P用目的端口号来 ...
- 速读原著-TCP/IP(BOOTP 的分组格式)
第16章 BOOTP:引导程序协议 16.2 BOOTP 的分组格式 BOOTP 请求和应答均被封装在U D P数据报中,如图1 6 - 1所示. 图1 6 - 2显示了长度为3 0 0字节的B O ...
- TCP/IP网络编程 - 基础学习
1. 创建Socket #include<sys/types.h> #include<sys/socket.h>int sock = ::socket(PF_INET, SOC ...
- TCP/IP网络简介(来自与51CTO学院视频授课内容)
多线程编程 TCP/IP网络简介 TCP/IP参考模型是计算机网络的始祖,他首先提出了分层的概念.它一共分为: 应用层:应用层协议建立在网络层协议之上,专门用于为用户提供应用服务,一般是可见的. 传输 ...
- TCP/IP网络编程之多进程服务端(二)
TCP/IP网络编程之多进程服务端(二) 信号处理 本章接上一章TCP/IP网络编程之多进程服务端(一),在上一章中,我们介绍了进程的创建和销毁,以及如何销毁僵尸进程.前面我们讲过,waitpid是非 ...
- 网络编程+go+java,Go语言中的TCP/IP网络编程
Go语言TCP/IP网络编程 乍一看,通过TCP/IP层连接两个进程会感觉可怕, 但是在Go语言中可能比你想象的要简单的多. TCP/IP层发送数据的应用场景 当然很多情况下,不是大多数情况下,使用更 ...
- 《TCP/IP 网络编程》笔记
本文主要基于<TCP/IP 网络编程>这本书进行总结,主要针对 Linux 网络编程部分进行阐述,Windows 网络编程部分有需要建议阅读原书籍. 一.基础知识 网络编程 网络编程就是编 ...
- TCP/IP网络编程之四书五经
TCP/IP网络编程之四书五经 孟岩 TCP/IP协议是目前广域网和局域网通用的网络协议,因此,基于TCP/IP的编程就格外重要.从 应用上来说,现在直接利用C层次Socket API进行TCP/IP ...
最新文章
- 机器学习中的数学基础:(1)实际应用中矩阵特征值与特征向量的几何意义
- Daily Scrum 9.28
- ROS系统实现 tf坐标系广播与监听
- 计算机键盘是编码键盘还是非编码键盘,矩阵按键原理图_矩阵按键扫描实例
- 抽象类和接口有什么区别?
- Python多任务(5. 进程之间的通信-Queue队列)
- c# winform TreeView与ListView的项互相拖动的应用[转载]
- JAVA零碎要点016---java去除List中的重复数据_各种方法_随时更新
- SAP License:如何取消物料帐的激活
- 修改 tomcat 内存
- Charles破解安装
- 小程序组件传值解决页面数据刷新
- 卸载360企业版密码
- 道格拉斯普克算法(简化线段点)
- 2022年中国镍期货成交量、成交金额、成交价格走势分析:镍开盘价持续走高[图]
- 光驱刻录软件提示需要计算机管理员权限,如何禁用光驱刻录功能、设置光驱只读而禁止刻录的方法...
- 世界气象日话“海洋气象”系列之——CMRC
- 这些数据爬虫网站,帮你工作提质增效,还不收藏?
- IVM在什么情况下可以使用
- LOL九周年战斗之夜 钻石宝箱获取攻略
热门文章
- Micrium 开放了µC/OS-III源代码
- 学生每日计划表_小学生每日学习计划安排表
- python_(1)_向量运算
- 浙江新曙光建设_中习集团大厦项目工地与姜太公签约,正在使用太公管工进行实名制考勤...
- 前缀im-,in-,il-,ir-的使用规律
- 【英语语法入门】 第22讲 完成时
- 中标麒麟系统远程桌面连接
- Centos虚拟机使用virt-manager创建虚拟机
- 调节效应分析时简单斜率图或交互效应图出现负数截距?
- 12.5m分辨率DEM数据?解读ASF DAAC的DEM数据--关于地理数据收集与处理的基本工具推荐(5)