Dagger: Towards Efficient RPCs in Cloud Microservices With Near Memory Reconfigurable NICs
Cloud applications are increasingly relying on hundreds of loosely coupled microservices to complete user requests that meet an application's end to end QoS requirements. Communication time between services accounts for a large fraction of the end to end latency and can introduce performance unpredictability and QoS violations. This letter presents our early work on Dagger, a hardware acceleration platform for networking, designed specifically with the unique qualities of microservices in mind. The Dagger architecture relies on an FPGA based NIC, closely coupled with the processor over a configurable memory interconnect, designed to offload and accelerate RPC stacks. Unlike the traditional cloud systems that use PCIe links as the NIC I/O interface, we leverage memory interconnected FPGAs as networking devices to provide the efficiency, transparency, and programmability needed for fine grained microservices. We show that this considerably improves CPU utilization and performance for cloud RPCs.
IEEE Computer Architecture Letters