A Stub Generator for Multilanguage RPC in Heterogeneous Environments
IEEE Transactions on Software Engineering - Special issue on distributed systems
A Remote Procedure Call Facility for Interconnecting Heterogeneous Computer Systems
IEEE Transactions on Software Engineering
A programmable interface language for heterogeneous distributed systems
ACM Transactions on Computer Systems (TOCS)
Remote pipes and procedures for efficient distributed communication
ACM Transactions on Computer Systems (TOCS)
Promises: linguistic support for efficient asynchronous procedure calls in distributed systems
PLDI '88 Proceedings of the ACM SIGPLAN 1988 conference on Programming Language design and Implementation
Network computing architecture
Network computing architecture
Implementing Remote Evaluation
IEEE Transactions on Software Engineering
The polylith software bus
A dynamic network architecture
ACM Transactions on Computer Systems (TOCS)
Guardians and Actions: Linguistic Support for Robust, Distributed Programs
ACM Transactions on Programming Languages and Systems (TOPLAS)
Implementing remote procedure calls
ACM Transactions on Computer Systems (TOCS)
Automated Protocol Implementation with RTAG
IEEE Transactions on Software Engineering
Semiautomatic Implementation of Protocols Using an Estelle-C Compiler
IEEE Transactions on Software Engineering
Constructive Protocol Specification Using Cicero
IEEE Transactions on Software Engineering
Research: Supporting fault-tolerant and open distributed processing using RPC
Computer Communications
A reliable asynchronous RPC architecture for wireless networks
Computer Communications
Hi-index | 0.00 |
Remote procedure call (RPC) is the most popular paradigm used today to build distributed systems and applications. As a consequence, the term "RPC" has grown to include a range of vastly different protocols above the transport layer. A resulting problem is that programs often use different RPC protocols, cannot be interconnected directly, and building a solution for each case in a large heterogeneous environment is prohibitively expensive. We describe the design of a system that can synthesize programs (RPC agents) to accommodate RPC heterogeneities. Because of its synthesis capability, the system also facilitates the design and implementation of new RPC protocols through rapid prototyping. We have built a prototype system to validate the design and to estimate the agent development costs and cross-RPC performance. The evaluation shows that the synthesis approach provides a more general solution than existing approaches do, and with lower software development and maintenance costs, while maintaining reasonable cross-RPC performance.