Application-Defined Receive Side Dispatching on the NIC

Fuente: arXiv
Salvato in:
Dettagli Bibliografici
Autori principali: Wang, Tao, Lin, Jinkun, Antichi, Gianni, Panda, Aurojit, Sivaraman, Anirudh
Natura: Preprint
Pubblicazione: 2023
Soggetti:
Accesso online:
Tags: Aggiungi Tag
Nessun Tag, puoi essere il primo ad aggiungerne!!
_version_ 1866914953055698944
author Wang, Tao
Lin, Jinkun
Antichi, Gianni
Panda, Aurojit
Sivaraman, Anirudh
author_facet Wang, Tao
Lin, Jinkun
Antichi, Gianni
Panda, Aurojit
Sivaraman, Anirudh
contents Application layer (L7) processing is increasingly implemented in proxies (e.g., Envoy) to simplify administration and management. However, prior work has observed that this reduces application performance and increases resource requirements. The reason is that moving logic out of the application required duplicating some computation and additional inter-process communication. This paper describes QingNiao, a system that moves L7 dispatch (a function implemented by all L7 proxies and affects all messages received by an application) to a NIC that is on the application's communication path. Unfortunately, the data formats and protocols used by modern applications pose a challenge when moving L7 dispatch to NICs. Consequently, when designing QingNiao we had to rethink not just the NIC hardware, but also how applications encode data sent over the network. We prototyped QingNiao using a 100GbE FPGA NIC, and show that for real-world applications QingNiao can achieve 6.6x to 7.15x higher throughput compared to software proxies.
format Preprint
id arxiv_https___arxiv_org_abs_2312_04857
institution arXiv
publishDate 2023
record_format arxiv
spellingShingle Application-Defined Receive Side Dispatching on the NIC
Wang, Tao
Lin, Jinkun
Antichi, Gianni
Panda, Aurojit
Sivaraman, Anirudh
Networking and Internet Architecture
Hardware Architecture
Application layer (L7) processing is increasingly implemented in proxies (e.g., Envoy) to simplify administration and management. However, prior work has observed that this reduces application performance and increases resource requirements. The reason is that moving logic out of the application required duplicating some computation and additional inter-process communication. This paper describes QingNiao, a system that moves L7 dispatch (a function implemented by all L7 proxies and affects all messages received by an application) to a NIC that is on the application's communication path. Unfortunately, the data formats and protocols used by modern applications pose a challenge when moving L7 dispatch to NICs. Consequently, when designing QingNiao we had to rethink not just the NIC hardware, but also how applications encode data sent over the network. We prototyped QingNiao using a 100GbE FPGA NIC, and show that for real-world applications QingNiao can achieve 6.6x to 7.15x higher throughput compared to software proxies.
title Application-Defined Receive Side Dispatching on the NIC
topic Networking and Internet Architecture
Hardware Architecture
url https://arxiv.org/abs/2312.04857