Font Size: a A A

Design And Research Of RDMA Virtualization-based RPC Framework

Posted on:2022-12-31Degree:MasterType:Thesis
Country:ChinaCandidate:Z D ZhangFull Text:PDF
GTID:2518306758991469Subject:Electronic information
Abstract/Summary:PDF Full Text Request
Through virtualization technology,cloud computing vendors enable users to purchase computing resources at various packaging levels in an elastic manner,eliminating the need for hardware maintenance and allowing them to focus on development itself.However,the traditional TCP/IP network stack in applications is a bottleneck for performance optimization today and is an important part of the "data center tax".In virtualization scenarios,packets have to pass through a dual stack of hosts and virtual machines,worsening network performance.On the other hand,Remote Direct Memory Access(RDMA)technology in high-performance computing enables network packets to bypass the involvement of the operating system kernel,providing excellent network performance.However,traditional RDMA technology is mainly applied to bare-metal scenarios,and the convergence of virtualization and RDMA is an important direction to solve cloud computing network problems.the combination of RDMA technology and virtualized network technology has a natural contradiction: the implementation of virtual machine functions requires the support of the host operating system(kernel);and the essence of RDMA's ability to obtain high-performance networks lies in bypassing the host operating system.How to solve this problem is the core of RDMA virtualization technology.In the cloud computing scenario,Remote Procedure Call(RPC)is a mainstream inter-process communication method.RDMA uses Verbs as the programming interface,which is incompatible with RPC communication libraries and has different programming paradigms,and simple interface translation cannot fully utilize the performance of RDMA.Designing an RPC framework optimized for RDMA technology in a public cloud VM scenario would bring significant network performance improvements to a large number of applications.In this paper,the following work has been done to address the above issues.The ecology of RDMA virtualization still lacks a macro summary,which is discussed and summarized in this paper from a modular perspective.The combing reveals that the communication framework RPC has no work that can be used in public cloud and improve performance through RDMA.In this paper,we design vRPC,a virtual machine-based RPC framework that can be applied to public cloud scenarios,and refactor its underlying RDMA and performance optimization.This paper designs the overall framework of vRPC using hybrid network I/O virtualization(i.e.,virtualizing the packets in the control plane and transmitting the data in the data plane using RDMA networks).This allows all control data to be processed through the OS,thus reusing the kernel's network stack to gain control of the network;while a large amount of communication data bypasses the OS through the RDMA network,achieving both control and performance benefits.In this paper,various optimization methods are designed in the vRPC frontand back-end separation system:(1)designing virtual network connections so that multiple communication links can share the RDMA connection link,thus mitigating the performance deterioration caused by the same host establishing too many RDMA connections and thus running out of RDMA NIC memory;(2)designing a priority queue-based communication mechanism between the interception layer and the front-end,which is guaranteed to mitigate cache bumps(high-frequency buffer replacement),solving the bottleneck at the software level and efficiently utilizing the RDMA transmission traffic;(3)designing a delayed destruction strategy for RDMA channels so that the next communication is hot-started and multiple RPC service objects can share a communication channel to further improve performance.In this paper,a prototype system of vRPC is implemented,which is proven to achieve the expected performance goals after comparative experiments: vRPC significantly outperforms traditional semi-virtualized schemes available for public clouds,with 84% lower latency and 1.3 times higher bandwidth than the latter;it even outperforms SR-IOV-based virtual machine schemes as well.In this paper,the performance improvement of the vRPC optimization scheme is further analyzed experimentally and quantitatively,and finally the time share and CPU usage of communication and computation of a real application is analyzed.Finally,it is proved that vRPC can effectively improve the underlying network performance,reduce the CPU load,and shorten the runtime of RPC applications.
Keywords/Search Tags:Remote Direct Memory Access, Network Virtualization, Remote Procedure Call
PDF Full Text Request
Related items