Please use this identifier to cite or link to this item: http://hdl.handle.net/1843/80425
Type: Tese
Title: eBPFlow: a Hardware/Software Platform to Seamlessly Offload Network Functions Leveraging eBPF
Other Titles: eBPFlow: uma plataforma de hardware/software para descarregar funções de rede de forma transparente, alavancando o eBPF
Authors: Racyus Delano Garcia Pacífico
First Advisor: Marcos Augusto Menezes Vieira
First Co-advisor: José Augusto Miranda Nacif
First Referee: Luiz Filipe Menezes Vieira
Second Referee: Ítalo Fernando Scotá Cunha
Third Referee: Fábio Luciano Verdi
metadata.dc.contributor.referee4: Ronaldo Alves Ferreira
Abstract: Network Functions Virtualization (NFV) and Software-Defined Networking (SDN) enable flexibility and programmability at the data plane. In addition, offloading packet processing to a hardware saves processing resources to compute other workloads. However, fulfilling requirements such as high throughput and low latency with a flexible and programmable data plane is challenging. This thesis proposes eBPFlow, a platform for seamlessly accelerating network computation. It builds upon eBPF (extended Berkeley Packet Filter). eBPFlow combines flexibility and programmability in software with high performance using an FPGA. We implemented our system on the NetFPGA SUME, performing tests on a physical testbed. We built a range of NFs, including LPM forwarding, DDoS mitigation, stateful firewall, deep packet inspection, and application layer packet classifier. Our results show that the eBPFlow supports offloading of NFs with throughput at the line rate, latency between 20 µs and 40 µs, communication with host, and consumption of 22 W. Moreover, eBPFlow processes 12.05 Mpps more than the kernel. eBPFlow has a throughput of 2.59 Gbps higher than the hXDP, a system similar to eBPFlow.
Abstract: Virtualização de funções de rede (NFV) e redes definidas por software (SDN) habilitam flexibilidade e programabilidade no plano de dados. Offloading do processamento de pacotes em hardware minimiza o uso de núcleos de processamento. No entanto, cumprir requisitos atuais, como alta vazão e baixa latência combinados com offloading de funções de rede (NFs) com um plano de dados flexı́vel e programável, ainda é uma tarefa desafiadora. Este trabalho propõe o eBPFlow, uma plataforma para acelerar a computação da rede. Ele baseia-se no eBPF, combinando flexibilidade e capacidade de programação em software com alto desempenho usando uma FPGA. O eBPFlow foi implementado na NetFPGA SUME. Experimentos com NFs foram realizados em um ambiente fı́sico. Nossos resultados mostram que o eBPFlow suporta aceleração de NFs com vazão em taxa de linha, latência entre 20 µs e 40 µs, consumindo pouca energia 22 W. Além disso, o eBPFlow processa 12.05 Mpps mais que o kernel. Ele tem uma vazão de 2.59 Gbps maior que o hXDP, um sistema similar ao eBPFlow.
Subject: Computação – Teses
Arquitetura de redes de computador – Teses
Linux (Sistema operacional de computador) – Teses
Compiladores (Programas de computador) – Teses
language: eng
metadata.dc.publisher.country: Brasil
Publisher: Universidade Federal de Minas Gerais
Publisher Initials: UFMG
metadata.dc.publisher.department: ICX - DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO
metadata.dc.publisher.program: Programa de Pós-Graduação em Ciência da Computação
Rights: Acesso Aberto
metadata.dc.rights.uri: http://creativecommons.org/licenses/by-nc-sa/3.0/pt/
URI: http://hdl.handle.net/1843/80425
Issue Date: 26-Oct-2023
Appears in Collections:Teses de Doutorado

Files in This Item:
File Description SizeFormat 
Tese_versao_final_completa_atualizada_Racyus_Delano.pdf1.95 MBAdobe PDFView/Open


This item is licensed under a Creative Commons License Creative Commons