Check out the new USENIX Web site.

Anonymous RPC:
Low-Latency Protection in a 64-Bit Address Space


Curtis Yarvin, Richard Bukowski, and Thomas Anderson
Computer Science Division
University of California at Berkeley

Abstract

In this paper, we propose a method of reducing the latency of cross-domain remote procedure call (RPC). Traditional systems use separate address spaces to provide memory protection between separate processes, but even with a highly optimized RPC system, the cost of switching between address spaces can make cross-domain RPC prohibitively expensive.

Our approach is to use _anonymity_ instead of hardware page tables for protection. Logically independent memory segments are placed at random locations in the same address space and protection domain. With 64-bit virtual addresses, it is unlikely that a process will be able to locate any other segment by accidental or malicious memory probes; it is impossible to corrupt a segment without knowing its location. The benefit is that a cross-domain RPC need not involve a hardware context switch. Measurements of our prototype implementation show that a round-trip null RPC takes only 7.7us on an Intel 486-33.


Download the full text of this paper in ASCII (43,328 bytes) form.

To Become a USENIX Member, please see our Membership Information.