6.执行的过程将结果返回服务器句柄7.服务器句柄返回结果,调用远程系统内核8.消息传回本地主机9.客户句柄由内核接收消息10.客户接收句柄返回的数据RPC OVER HTTPMicrosoft RPC-over-HTTP 部署(RPC over HTTP)允许RPC客户端安全和有效地通过Internet 连接到RPC 服务器程序并执行远程过程调用。这是在一个名称为RPC-over-HTTP 代理,或简称为RPC 代理的中间件的帮助下完成的。RPC 代理运行在IIS计算机上。它接受来自Internet 的RPC 请求,在这些请求上执行认证,检验和访问检查,如果请求通过所有的测试,RPC 代理将请求转发给执行真正处理的RPC 服务器。通过RPC over HTTP,RPC客户端不和服务器直接通信,它们使用RPC 代理作为中间件。协议结构:远程过程调用(RPC)信息协议由两个不同结构组成:调用信息和答复信息。信息流程如下所示:RPC:远程过程调用流程RPC 调用信息:每条远程过程调用信息包括以下无符号整数字段,以独立识别远程过程:程序号(Program number)程序版本号(Program version number)过程号(Procedure number)RPC 调用信息主体形式如下:struct call_body {unsigned int rpcvers;unsigned int prog;unsigned int vers;unsigned int proc;opaque_auth cred;opaque_auth verf;1 parameter2 parameter . . . };RPC 答复信息:RPC 协议的答复信息的改变取决于网络服务器对调用信息是接收还是拒绝。答复信息请求包括区别以下情形的各种信息:RPC 成功执行调用信息。.RPC 的远程实现不是协议第二版,返回 RPC 支持的最低和最高版本号。在远程系统中,远程程序不可用。远程程序不支持被请求的版本号。返回远程程序所支持的最低和最高版本号。请求的过程号不存在。通常是呼叫方协议或程序差错。RPC答复信息形式如下:enum reply_stat stat{MSG_ACCEPTED = 0,MSG_DENIED = 1 };新闻热点
疑难解答