- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
RFC1057
RFC1057
组织:中国互动出版网(/)
RFC文档中文翻译计划(/compters/emook/aboutemook.htm)
E-mail:ouyang@
译者:spacelu(spacelu wuchun_lu@163.net)
译文发布时间:2001-8-14
版权:本中文翻译文档版权归中国互动出版网所有。可以用于非商业用途自由转载,但必须
保留本文档的翻译及版权信息。
Network Working Group Sun Microsystems, Inc.
Request For Comments: 1057 June 1988
Obsoletes: RFC 1050
RFC:远程过程调用协议说明第二版
(RPC: Remote Procedure Call Protocol Specification Version 2)
备忘录状态
该备忘录表书了Sun为系统和其它系统用应用的标准,和我们期望因特网应用的一个考
虑.现在该备忘录还不是一个因特网标准.该备忘录的发布不受限制.
1.简介 2
2.术语学 2
3. RPC模式 2
4. 传送和语义 3
5. 绑定和集合独立 3
6. 鉴定 4
7. RPC协议要求 4
7.1 RPC程序和过程 4
7.2 鉴定 5
7.3 程序号委派 5
7.4 RPC协议的其它使用 6
8. RPC信息协议 6
9. 鉴定协议 9
9.1 空鉴定 9
9.2 Unix鉴定 9
9.3 DES 鉴定 10
10. 记录记号标准 13
11. RPC语言 13
11.1 RPC语言描述的例子: 14
11.2 RPC语言说明 14
11.3 语法注意事项: 15
附录:程序协议端口映射 15
A.1 端口映射协议说明(用RPC语言) 15
A.2 端口映射操作: 17
参考资料: 17
1.简介
文档详细说明了用在Sun远程过程调用(RPC)包的信息协议第二版.这个信息协议用外部
数据表示(XDR)语言来说明.该文档假设读者对XDR熟悉.它不尽力证明远程过程调用系统或
描述它们的应用.由Birrell和Nelson[1]写的文档推荐成为远程过程调用概念的最好背景知
识.
2.术语学
文档讨论了客户,调用,服务器,应答,服务,程序,过程和版本.每一个远程调用有两方:
积极的客户方发送调用请求到服务器,服务器发回应答信息.一个网络服务是一个或多个远程
程序的集合.一个远程程序执行一个或多个远程过程;过程,参数和结果都在特殊程序协议说
明(看附录A的例子)里记录.为了和改变的协议兼容,一个服务器可能支持多个版本的远程程
序.
例如,一个网络文件服务由两部分组成.一个程序可能处理高层应用(如文件系统访问控
制和锁控.另外有些处理低层如文件输入输出和象读和写过程.网络文件服务的客户将调用代
表该客户与对应服务的两类程序相关的过程.
术语客户和服务器只是适用于特殊的传输;一个特定硬件实体(主机)或软件实体(过程
或程序)能够在不同时间执行两种角色.例如,提供远程执行服务的程序可能也是一个网络文
件服务的客户端.另外,它可能把软件根据服务器和客户端功能分成分开的库或程序.
3. RPC模式
Sun RPC协议基于远程过程调用模式,它类似于本地过程调用模型.在本地调用方式中,
调用者把参数放在公众指定地点(如注册窗口),然后发送控制到过程,最后重新获得控制.接
着,从指定地点取出过程结果,调用者继续执行.
远程过程调用相类似.控制线程在两个过程中逻辑转换:调用过程和服务过程.调用过程
首先发送一个调用信息到服务过程然后等待应答信息.调用信息包括过程参数,应答信息包括
过程结果.一旦接收到应答信息,就取得过程结果,然后调用执行继续进行.
在服务器端,过程保持睡眠状态到调用信息的到达.当一个调用信息到达,服务器获得过
程参数,计算结果,发送应答信息,然后等待下一个调用信息.
在这种模型中,任何时间里两个过程只有一个激活.但是,该模型只是作为一个例子.Sun
RPC协议对并行模型执行没有限制,但是其它的有可能不一样.例如,一个应用程序可能选择
RPC调用为异步的,因此客户端只有等到服务器端的应答才做有效工作.另外一个可能是使服
务器端生成一个新的任务来处理进来的调用,因此最初的服务器可以处理其他请求. 远程调
用和本地过程调用有几个重要区别:
1.错误处理:在远程过程调用中,网络或远程服务器的失败必须处理.
2.全局变量和副作用:因为服务器没法访问客户地址空间,隐藏的参数不能用全局变量传递或
返回副作用.
3.表现:远程过程操作比本地过程调用慢一到几个数量级
文档评论(0)