1 RPC协议综述:ONC RPC为例
RPC需要解决五个问题:如何规定远程调用的语法?如果传递参数?如何表示数据?(前三个问题统称为协议问题)如何知道一个服务端都实现了哪些远程调用,从哪个端口可以访问这个远程调用?(服务发现问题)发生了错误、重传、丢包、性能等问题怎么办?(传输问题)
- 协议问题
语法问题:RPC调用标准如下
比如基于RPC协议实现的NFS(Network File System,网格文件系统)可以在本地mount一个远程的目录到本地的一个目录,从而使得本地的用户在这个目录里面写入、读出任何文件的时候,其实操作的是远程另一台机器上的文件。
表示数据问题:XDR(External Data Representation,外部数据表示法)是一个标准的数据压缩格式,可以表示基本的数据类型,也可以表示结构体,用于编码和解码参数:
传递参数问题:在