Tigger: A Database Proxy That Bounces with User-Bypass

Author:

Butrovich Matthew1,Ramanathan Karthik1,Rollinson John2,Lim Wan Shen1,Zhang William1,Sherry Justine1,Pavlo Andrew1

Affiliation:

1. Carnegie Mellon University

2. Army Cyber Institute

Abstract

Developers often deploy database-specific network proxies whereby applications connect transparently to the proxy instead of directly connecting to the database management system (DBMS). This indirection improves system performance through connection pooling, load balancing, and other DBMS-specific optimizations. Instead of simply forwarding packets, these proxies implement DBMS protocol logic (i.e., at the application layer) to achieve this behavior. Consequently, existing proxies are user-space applications that process requests as they arrive on network sockets and forward them to the appropriate destinations. This approach incurs inefficiencies as the kernel repeatedly copies buffers between user-space and kernel-space, and the associated system calls add CPU overhead. This paper presents user-bypass, a technique to eliminate these overheads by leveraging modern operating system features that support custom code execution. User-bypass pushes application logic into kernel-space via Linux's eBPF infrastructure. To demonstrate its benefits, we implemented Tigger, a PostgreSQL-compatible DBMS proxy using user-bypass to eliminate the overheads of traditional proxy design. We compare Tigger's performance against other state-of-the-art proxies widely used in real-world deployments. Our experiments show that Tigger outperforms other proxies --- in one scenario achieving both the lowest transaction latencies (up to 29% reduction) and lowest CPU utilization (up to 42% reduction). The results show that user-bypass implementations like Tigger are well-suited to DBMS proxies' unique requirements.

Publisher

Association for Computing Machinery (ACM)

Subject

General Earth and Planetary Sciences,Water Science and Technology,Geography, Planning and Development

Reference87 articles.

1. [n.d.]. Amazon EC2 C6i Instances - Amazon Web Services. https://aws.amazon.com/ec2/instance-types/c6i/. [n.d.]. Amazon EC2 C6i Instances - Amazon Web Services. https://aws.amazon.com/ec2/instance-types/c6i/.

2. [n.d.]. Amazon RDS Proxy | Highly Available Database Proxy | Amazon Web Services. https://aws.amazon.com/rds/proxy/. [n.d.]. Amazon RDS Proxy | Highly Available Database Proxy | Amazon Web Services. https://aws.amazon.com/rds/proxy/.

3. [n.d.]. App Scaling - AWS Application Auto Scaling - AWS. https://aws.amazon.com/autoscaling/. [n.d.]. App Scaling - AWS Application Auto Scaling - AWS. https://aws.amazon.com/autoscaling/.

4. [n.d.]. ENA Linux Driver Best Practices and Performance Optimization Guide. https://github.com/amzn/amzn-drivers/blob/master/kernel/linux/ena/ENA_Linux_Best_Practices.rst. [n.d.]. ENA Linux Driver Best Practices and Performance Optimization Guide. https://github.com/amzn/amzn-drivers/blob/master/kernel/linux/ena/ENA_Linux_Best_Practices.rst.

5. [n.d.]. F-Stack | High Performance Network Framework Based On DPDK. http://www.f-stack.org. [n.d.]. F-Stack | High Performance Network Framework Based On DPDK. http://www.f-stack.org.

同舟云学术

1.学者识别学者识别

2.学术分析学术分析

3.人才评估人才评估

"同舟云学术"是以全球学者为主线,采集、加工和组织学术论文而形成的新型学术文献查询和分析系统,可以对全球学者进行文献检索和人才价值评估。用户可以通过关注某些学科领域的顶尖人物而持续追踪该领域的学科进展和研究前沿。经过近期的数据扩容,当前同舟云学术共收录了国内外主流学术期刊6万余种,收集的期刊论文及会议论文总量共计约1.5亿篇,并以每天添加12000余篇中外论文的速度递增。我们也可以为用户提供个性化、定制化的学者数据。欢迎来电咨询!咨询电话:010-8811{复制后删除}0370

www.globalauthorid.com

TOP

Copyright © 2019-2024 北京同舟云网络信息技术有限公司
京公网安备11010802033243号  京ICP备18003416号-3