Distributed procedure call

Placeholder Show Content

Abstract/Contents

Abstract
Communication performance is a critical factor when building distributed systems; communication costs can account for a non-trivial fraction of an application's service time. This has motivated many advances in raw communication performance, including both increased throughput and decreased latency. Unfortunately, these efforts ignore a more fundamental drain on communication performance: today's most common communication patterns, which result from the use of Remote Procedure Calls (RPCs), are inefficient and create otherwise unnecessary communication. With a more flexible communication pattern, it is possible to eliminate unnecessary communication, reduce the number of network hops, and ultimately improve the end-to-end latency of distributed executions. To that end, this dissertation presents Distributed Procedure Call (DPC), a new communication primitive designed to support a "multi-hop" communication pattern for distributed systems. Multi-hop communication breaks the one-to-one mapping between requests and responses in traditional RPCs. With DPC, a server can delegate a request to one or more additional servers before responses are sent, forming a tree of requests. This allows DPC to reduce latency by eliminating messages and network hops. Compared to RPC, DPC can reduce end-to-end communication latency by 18% to 49% in a variety of applications without harming throughput. DPC makes it easy for applications to take advantage of multi-hop communication. DPC's simple and general-purpose abstraction allows applications to dynamically form distributed executions. Behind this abstraction, the DPC protocol manages the multi-hop communication, matching request and response messages, and providing DPC completion and failure detection. Furthermore, DPC can be implemented as a library. This shields applications from the complexities of multi-hop communication and allows applications to focus on the logic of their distributed execution. DPC gives developers a new tool to build and optimize distributed systems.

Description

Type of resource text
Form electronic resource; remote; computer; online resource
Extent 1 online resource.
Place California
Place [Stanford, California]
Publisher [Stanford University]
Copyright date 2021; ©2021
Publication date 2021; 2021
Issuance monographic
Language English

Creators/Contributors

Author Lee, Collin Shing-Tsi
Degree supervisor Ousterhout, John K
Thesis advisor Ousterhout, John K
Thesis advisor Prabhakar, Balaji, 1967-
Thesis advisor Winstein, Keith
Degree committee member Prabhakar, Balaji, 1967-
Degree committee member Winstein, Keith
Associated with Stanford University, Computer Science Department

Subjects

Genre Theses
Genre Text

Bibliographic information

Statement of responsibility Collin Shing-Tsi Lee.
Note Submitted to the Computer Science Department.
Thesis Thesis Ph.D. Stanford University 2021.
Location https://purl.stanford.edu/nv119rp9547

Access conditions

Copyright
© 2021 by Collin Shing-Tsi Lee
License
This work is licensed under a Creative Commons Attribution 3.0 Unported license (CC BY).

Also listed in

Loading usage metrics...