Repository logo

Infoscience

  • English
  • French
Log In
Logo EPFL, École polytechnique fédérale de Lausanne

Infoscience

  • English
  • French
Log In
  1. Home
  2. Academic and Research Output
  3. Conferences, Workshops, Symposiums, and Seminars
  4. R2P2: Making RPCs first-class datacenter citizens
 
conference paper

R2P2: Making RPCs first-class datacenter citizens

Kogias, Marios  
•
Prekas, George  
•
Ghosn, Adrien  
Show more
2019
Proceedings of the 2019 Usenix Annual Technical Conference
USENIX Annual Technical Conference 2019

Remote Procedure Calls are widely used to connect datacenter applications with strict tail-latency service level objectives in the scale of µs. Existing solutions utilize streaming or datagram-based transport protocols for RPCs that impose overheads and limit the design flexibility. Our work exposes the RPC abstraction to the endpoints and the network, making RPCs first-class datacenter citizens and allowing for in-network RPC scheduling. We propose R2P2, a UDP-based transport protocol specifically designed for RPCs inside a datacenter. R2P2 exposes pairs of requests and responses and allows efficient and scalable RPC routing by separating the RPC target selection from request and reply streaming. Leveraging R2P2, we implement a novel join-bounded-shortest-queue (JBSQ) RPC load balancing policy, which lowers tail latency by centralizing pending RPCs in the router and ensures that requests are only routed to servers with a bounded number of outstanding requests. The R2P2 router logic can be implemented either in a software middlebox or within a P4 switch ASIC pipeline. Our evaluation, using a range of microbenchmarks, shows that the protocol is suitable for µs-scale RPCs and that its tail latency outperforms both random selection and classic HTTP reverse proxies. The P4-based implementation of R2P2 on a Tofino ASIC adds less than 1µs of latency whereas the software middlebox implementation adds 5µs latency and requires only two CPU cores to route RPCs at 10 Gbps linerate. R2P2 improves the tail latency of web index searching on a cluster of 16 workers operating at 50% of capacity by 5.7× over NGINX. R2P2 improves the throughput of the Redis key-value store on a 4-node cluster with master/slave replication for a tail-latency service-level objective of 200µs by more than 4.8× vs. vanilla Redis.

  • Files
  • Details
  • Metrics
Type
conference paper
Web of Science ID

WOS:000489756800059

Author(s)
Kogias, Marios  
Prekas, George  
Ghosn, Adrien  
Fietz, Jonas  
Bugnion, Edouard  
Date Issued

2019

Publisher

USENIX ASSOC

Publisher place

Berkeley

Published in
Proceedings of the 2019 Usenix Annual Technical Conference
ISBN of the book

978-1-939133-03-8

Start page

863

End page

879

Subjects

Computer Science, Software Engineering

•

Computer Science, Theory & Methods

•

Computer Science

•

tail

Editorial or Peer reviewed

REVIEWED

Written at

EPFL

EPFL units
DCSL  
Event nameEvent placeEvent date
USENIX Annual Technical Conference 2019

Renton, WA, USA

July 10-12, 2019

Available on Infoscience
July 11, 2019
Use this identifier to reference this record
https://infoscience.epfl.ch/handle/20.500.14299/159008
Logo EPFL, École polytechnique fédérale de Lausanne
  • Contact
  • infoscience@epfl.ch

  • Follow us on Facebook
  • Follow us on Instagram
  • Follow us on LinkedIn
  • Follow us on X
  • Follow us on Youtube
AccessibilityLegal noticePrivacy policyCookie settingsEnd User AgreementGet helpFeedback

Infoscience is a service managed and provided by the Library and IT Services of EPFL. © EPFL, tous droits réservés