CLEI Electronic Journal (Jul 2024)

On the Measurement of io_uring Performance: a Strategy and Experience in the Envoy Service Mesh

  • Luca Octavio Martínez,
  • Raúl Gutierrez,
  • Luca Cernuzzi

DOI
https://doi.org/10.19153/cleiej.27.2.3
Journal volume & issue
Vol. 27, no. 2

Abstract

Read online

A growing number of projects from various areas have recently incorporated support for io_uring, a novel technique to reduce system calls and accelerate processing capabilities in network services. This new approach promises to yield benefits within the context of modern infrastructure patterns, such as those embracing the service mesh paradigm. Among these projects, Envoy Proxy has been in the process of gaining io_uring support. An initial experimental trial using Envoy with io_uring reports a 10% increase in bandwidth along with a 10% reduction in latency. Unfortunately there is scarce companion data to support the results and the corresponding communication protocols that were used, all of which would have been quite useful to facilitate the reproducibility of these experiences. Therefore, the main contribution of the present study aims to measure and systematise the impact of io_uring in an Envoy-based service mesh using our proposed matrix of operations and protocols. We have also designed a measurement strategy which is composed of key metrics to assess the impact of io_uring. Our test results show improvements reducing latency and increasing bandwidth. More specifically, for HTTP/1 the obtained results are on par with the initial claims whereas for HTTP/2 they are better than the previous study.

Keywords