Experimental Evaluation on Packet Processing Frameworks under Virtual Environments

Detalhes bibliográficos
Ano de defesa: 2021
Autor(a) principal: FREITAS, Eduardo Felipe Fonseca de
Orientador(a): SADOK, Djamel Fawzi Hadj
Banca de defesa: Não Informado pela instituição
Tipo de documento: Dissertação
Tipo de acesso: Acesso aberto
Idioma: eng
Instituição de defesa: Universidade Federal de Pernambuco
Programa de Pós-Graduação: Programa de Pos Graduacao em Ciencia da Computacao
Departamento: Não Informado pela instituição
País: Brasil
Palavras-chave em Português:
XDP
Link de acesso: https://repositorio.ufpe.br/handle/123456789/42176
Resumo: O kernel Linux é um componente central das aplicações de rede, estando presente na maioria dos servidores em data centers. Com o tempo, à medida que servidores e placas de rede evoluíram para atender tecnologias de rede com demandas de alto throughput e baixa latência, o kernel tornou-se um gargalo, impedindo as aplicações de rede de utilizarem a capacidade máxima do hardware. Nesse cenário, diferentes frameworks de processamento de pacotes surgiram para solucionar esse gargalo. Os dois principais são o DPDK e XDP, com propostas diferentes para atingir altas taxas de processamento. DPDK adota o by- pass do kernel, excluindo-o do processamento e levando os pacotes para o user space. Já o XDP, por outro lado, processa os pacotes dentro do kernel, de forma antecipada comparada ao processamento padrão. Em conjunto com isso, o paradigma de computação em nuvem, atualmente disponível na maioria dos data centers, traz a virtualização como tecnologia fundamental. Com múltiplas aplicações e sistemas sendo executados no mesmo host, surge outro problema, o de competição de recursos. Assim, essa dissertação executa experimentos que buscam avaliar como a presença de um ambiente virtual de computação em nuvem pode interferir no desempenho de ambos DPDK e XDP. Os resultados mostram que embora o processamento “dentro do kernel” traga mais segurança e integração com sistema, essas exatas medidas de segurança causam perda de desempenho ao XDP. Além disso, o XDP também demonstra ser o mais afetado pela presença do ambiente virtual, considerando a taxa de throughput e também a perda de pacotes. Por outro lado, existe um dilema ao utilizar o XDP, que não somente é possível alcançar maior segurança, mas também em relação ao uso de recursos, já que o DPDK aloca um núcleo de CPU completo para utilizar no processamento de pacotes. Também, dependendo do processamento sendo feito pelo framework, como quando depende de uso intenso de CPU, o DPDK oferece uma perda considerável de desempenho do throughput.
id UFPE_241005145ba595847b0e0e4ed551f970
oai_identifier_str oai:repositorio.ufpe.br:123456789/42176
network_acronym_str UFPE
network_name_str Repositório Institucional da UFPE
repository_id_str
spelling FREITAS, Eduardo Felipe Fonseca dehttp://lattes.cnpq.br/2414810654799563http://lattes.cnpq.br/3776300004312848SADOK, Djamel Fawzi Hadj2021-12-13T19:21:24Z2021-12-13T19:21:24Z2021-08-26FREITAS, Eduardo Felipe Fonseca de. Experimental Evaluation on Packet Processing Frameworks under Virtual Environments. 2021. Dissertação (Mestrado em Ciência da Computação) - Universidade Federal de Pernambuco, Recife, 2021.https://repositorio.ufpe.br/handle/123456789/42176O kernel Linux é um componente central das aplicações de rede, estando presente na maioria dos servidores em data centers. Com o tempo, à medida que servidores e placas de rede evoluíram para atender tecnologias de rede com demandas de alto throughput e baixa latência, o kernel tornou-se um gargalo, impedindo as aplicações de rede de utilizarem a capacidade máxima do hardware. Nesse cenário, diferentes frameworks de processamento de pacotes surgiram para solucionar esse gargalo. Os dois principais são o DPDK e XDP, com propostas diferentes para atingir altas taxas de processamento. DPDK adota o by- pass do kernel, excluindo-o do processamento e levando os pacotes para o user space. Já o XDP, por outro lado, processa os pacotes dentro do kernel, de forma antecipada comparada ao processamento padrão. Em conjunto com isso, o paradigma de computação em nuvem, atualmente disponível na maioria dos data centers, traz a virtualização como tecnologia fundamental. Com múltiplas aplicações e sistemas sendo executados no mesmo host, surge outro problema, o de competição de recursos. Assim, essa dissertação executa experimentos que buscam avaliar como a presença de um ambiente virtual de computação em nuvem pode interferir no desempenho de ambos DPDK e XDP. Os resultados mostram que embora o processamento “dentro do kernel” traga mais segurança e integração com sistema, essas exatas medidas de segurança causam perda de desempenho ao XDP. Além disso, o XDP também demonstra ser o mais afetado pela presença do ambiente virtual, considerando a taxa de throughput e também a perda de pacotes. Por outro lado, existe um dilema ao utilizar o XDP, que não somente é possível alcançar maior segurança, mas também em relação ao uso de recursos, já que o DPDK aloca um núcleo de CPU completo para utilizar no processamento de pacotes. Também, dependendo do processamento sendo feito pelo framework, como quando depende de uso intenso de CPU, o DPDK oferece uma perda considerável de desempenho do throughput.FACEPEThe Linux kernel is at the heart of network applications, being present in most servers across data centers. With time, as servers and network cards evolved to enable high-throughput and low-latency network technologies, the kernel became a bottleneck, preventing network applications from operating at maximum hardware capacities. In such scenario, several “packet processing frameworks” emerged to solve this bottleneck. The two main ones are DPDK and XDP, adopting different approaches to achieve high pro- cessing rates. DPDK consists of bypassing the kernel and processing packets in user space. XDP, in contrast, processes packets inside the kernel, at an early stage in the processing path. Alongside this, the cloud computing paradigm, currently available in most data cen- ters, brings virtualization as its most important technology and enabler. With multiple applications and systems running in the same host, comes another concern, that of host resource competition. Thus, this dissertation creates experiments that evaluate how the presence of a cloud computing virtualization environment can interfere in both DPDK and XDP’s performance. Results show that even though the in-kernel processing from XDP may assure system security and integration, these exact security measures interfere in throughput performance and packet loss. Also, XDP seems to be the most effected by the presence of virtual environment. However, there is a trade-off when using XDP, not only for the system security but for resource usage, since DPDK allocates full CPU core utilization for packet processing. Also, depending on the processing tasks at hand, such as those that require heavy CPU usage, DPDK does not offer an optimal throughput performance.engUniversidade Federal de PernambucoPrograma de Pos Graduacao em Ciencia da ComputacaoUFPEBrasilDPDKXDPKernel LinuxProcessamento de Pacote de RedeKernel BypassExperimental Evaluation on Packet Processing Frameworks under Virtual Environmentsinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesismestradoinfo:eu-repo/semantics/openAccessreponame:Repositório Institucional da UFPEinstname:Universidade Federal de Pernambuco (UFPE)instacron:UFPELICENSElicense.txtlicense.txttext/plain; charset=utf-81908https://repositorio.ufpe.br/bitstream/123456789/42176/2/license.txtc59d330e2c454f71974f5866a0e8a96aMD52ORIGINALDISSERTAÇÃO Eduardo Felipe Fonseca de Freitas.pdfDISSERTAÇÃO Eduardo Felipe Fonseca de Freitas.pdfapplication/pdf1225277https://repositorio.ufpe.br/bitstream/123456789/42176/1/DISSERTA%c3%87%c3%83O%20Eduardo%20Felipe%20Fonseca%20de%20Freitas.pdf80caacdc93af162bebc42d542e7f8c06MD51TEXTDISSERTAÇÃO Eduardo Felipe Fonseca de Freitas.pdf.txtDISSERTAÇÃO Eduardo Felipe Fonseca de Freitas.pdf.txtExtracted texttext/plain116037https://repositorio.ufpe.br/bitstream/123456789/42176/3/DISSERTA%c3%87%c3%83O%20Eduardo%20Felipe%20Fonseca%20de%20Freitas.pdf.txt60ee548aebecf80893132720fc297decMD53THUMBNAILDISSERTAÇÃO Eduardo Felipe Fonseca de Freitas.pdf.jpgDISSERTAÇÃO Eduardo Felipe Fonseca de Freitas.pdf.jpgGenerated Thumbnailimage/jpeg1266https://repositorio.ufpe.br/bitstream/123456789/42176/4/DISSERTA%c3%87%c3%83O%20Eduardo%20Felipe%20Fonseca%20de%20Freitas.pdf.jpg6ade8c76e22dff8052be57fa8d999519MD54123456789/421762021-12-14 02:10:43.499oai:repositorio.ufpe.br:123456789/42176VGVybW8gZGUgRGVww7NzaXRvIExlZ2FsIGUgQXV0b3JpemHDp8OjbyBwYXJhIFB1YmxpY2HDp8OjbyBkZSBUcmFiYWxob3MgQWNhZMOqbWljb3Mgbm8gUmVwb3NpdMOzcmlvIERpZ2l0YWwgZGEgVUZQRQoKRGVjbGFybyBwYXJhIG9zIGRldmlkb3MgZmlucyBkZXN0ZSBUZXJtbyBkZSBEZXDDs3NpdG8gTGVnYWwgZSBBdXRvcml6YcOnw6NvIHBhcmEgUHVibGljYcOnw6NvIGRlIFRyYWJhbGhvcyBBY2Fkw6ptaWNvcyBubyBSZXBvc2l0w7NyaW8gRGlnaXRhbCBkYSBVRlBFIHF1ZSBlc3RvdSBjaWVudGUgcXVlOgpJIC0gbyBjb250ZcO6ZG8gZGlzcG9uaWJpbGl6YWRvIMOpIGRlIG1pbmhhIGludGVpcmEgcmVzcG9uc2FiaWxpZGFkZTsKSUkgLSBvIGNvbnRlw7pkbyDDqSBvcmlnaW5hbCwgZSBzZSBvIHRyYWJhbGhvIGUvb3UgcGFsYXZyYXMgZGUgb3V0cmFzIHBlc3NvYXMgZm9yYW0gdXRpbGl6YWRvcywgZXN0YXMgZm9yYW0gZGV2aWRhbWVudGUgcmVjb25oZWNpZGFzOwpJSUkgLSBhIGFsdGVyYcOnw6NvIGRhIG1vZGFsaWRhZGUgZGUgYWNlc3NvIGFvIHRyYWJhbGhvIGFww7NzIG8gZGVww7NzaXRvIGUgYW50ZXMgZGUgZmluZGFyIG8gcGVyw61vZG8gZGUgZW1iYXJnbywgcXVhbmRvIGZvciBlc2NvbGhpZG8gYWNlc3NvIHJlc3RyaXRvLCBzZXLDoSBwZXJtaXRpZGEgbWVkaWFudGUgc29saWNpdGHDp8OjbyBkbyAoYSkgYXV0b3IgKGEpIGFvIFNpc3RlbWEgSW50ZWdyYWRvIGRlIEJpYmxpb3RlY2FzIGRhIFVGUEUgKFNJQi9VRlBFKS4KIApQYXJhIHRyYWJhbGhvcyBlbSBBY2Vzc28gYWJlcnRvOgpOYSBxdWFsaWRhZGUgZGUgdGl0dWxhciBkb3MgZGlyZWl0b3MgYXV0b3JhaXMgZGUgYXV0b3IgcXVlIHJlY2FlbSBzb2JyZSBlc3RlIFRyYWJhbGhvIEFjYWTDqm1pY28sIGZ1bmRhbWVudGFkbyBuYSBMZWkgZGUgRGlyZWl0byBBdXRvcmFsIG5vIDkuMTYwIGRlIDE5IGRlIGZldmVyZWlybyBkZSAxOTk4LCBhcnQuIDI5LCBpbmNpc28gSUlJLCBhdXRvcml6byBhIFVuaXZlcnNpZGFkZSBGZWRlcmFsIGRlIFBlcm5hbWJ1Y28gYSBkaXNwb25pYmlsaXphciBncmF0dWl0YW1lbnRlLCBzZW0gcmVzc2FyY2ltZW50byBkb3MgZGlyZWl0b3MgYXV0b3JhaXMsIHBhcmEgZmlucyBkZSBsZWl0dXJhLCBpbXByZXNzw6NvIGUvb3UgZG93bmxvYWQgKGFxdWlzacOnw6NvKSBhdHJhdsOpcyBkbyBzaXRlIGRvIFJlcG9zaXTDs3JpbyBEaWdpdGFsIGRhIFVGUEUgbm8gZW5kZXJlw6dvIGh0dHA6Ly93d3cucmVwb3NpdG9yaW8udWZwZS5iciwgYSBwYXJ0aXIgZGEgZGF0YSBkZSBkZXDDs3NpdG8uCgpQYXJhIHRyYWJhbGhvcyBlbSBBY2Vzc28gcmVzdHJpdG86Ck5hIHF1YWxpZGFkZSBkZSB0aXR1bGFyIGRvcyBkaXJlaXRvcyBhdXRvcmFpcyBkZSBhdXRvciBxdWUgcmVjYWVtIHNvYnJlIGVzdGUgVHJhYmFsaG8gZGUgQ29uY2x1c8OjbyBkZSBDdXJzbywgZnVuZGFtZW50YWRvIG5hIExlaSBkZSBEaXJlaXRvIEF1dG9yYWwgbm8gOS4xNjAgZGUgMTkgZGUgZmV2ZXJlaXJvIGRlIDE5OTgsIGFydC4gMjksIGluY2lzbyBJSUksIGF1dG9yaXpvIGEgVW5pdmVyc2lkYWRlIEZlZGVyYWwgZGUgUGVybmFtYnVjbyBhIGRpc3BvbmliaWxpemFyIGdyYXR1aXRhbWVudGUsIHNlbSByZXNzYXJjaW1lbnRvIGRvcyBkaXJlaXRvcyBhdXRvcmFpcywgcGFyYSBmaW5zIGRlIGxlaXR1cmEsIGltcHJlc3PDo28gZS9vdSBkb3dubG9hZCAoYXF1aXNpw6fDo28pIGF0cmF2w6lzIGRvIHNpdGUgZG8gUmVwb3NpdMOzcmlvIERpZ2l0YWwgZGEgVUZQRSBubyBlbmRlcmXDp28gaHR0cDovL3d3dy5yZXBvc2l0b3Jpby51ZnBlLmJyLCBxdWFuZG8gZmluZGFyIG8gcGVyw61vZG8gZGUgYXTDqSAwMSBhbm8gZGUgZW1iYXJnbywgY29uZm9ybWUgaW5mb3JtYWRvIG5vIGNhbXBvIERhdGEgZGUgRW1iYXJnby4KRepositório InstitucionalPUBhttps://repositorio.ufpe.br/oai/requestattena@ufpe.bropendoar:22212021-12-14T05:10:43Repositório Institucional da UFPE - Universidade Federal de Pernambuco (UFPE)false
dc.title.pt_BR.fl_str_mv Experimental Evaluation on Packet Processing Frameworks under Virtual Environments
title Experimental Evaluation on Packet Processing Frameworks under Virtual Environments
spellingShingle Experimental Evaluation on Packet Processing Frameworks under Virtual Environments
FREITAS, Eduardo Felipe Fonseca de
DPDK
XDP
Kernel Linux
Processamento de Pacote de Rede
Kernel Bypass
title_short Experimental Evaluation on Packet Processing Frameworks under Virtual Environments
title_full Experimental Evaluation on Packet Processing Frameworks under Virtual Environments
title_fullStr Experimental Evaluation on Packet Processing Frameworks under Virtual Environments
title_full_unstemmed Experimental Evaluation on Packet Processing Frameworks under Virtual Environments
title_sort Experimental Evaluation on Packet Processing Frameworks under Virtual Environments
author FREITAS, Eduardo Felipe Fonseca de
author_facet FREITAS, Eduardo Felipe Fonseca de
author_role author
dc.contributor.authorLattes.pt_BR.fl_str_mv http://lattes.cnpq.br/2414810654799563
dc.contributor.advisorLattes.pt_BR.fl_str_mv http://lattes.cnpq.br/3776300004312848
dc.contributor.author.fl_str_mv FREITAS, Eduardo Felipe Fonseca de
dc.contributor.advisor1.fl_str_mv SADOK, Djamel Fawzi Hadj
contributor_str_mv SADOK, Djamel Fawzi Hadj
dc.subject.por.fl_str_mv DPDK
XDP
Kernel Linux
Processamento de Pacote de Rede
Kernel Bypass
topic DPDK
XDP
Kernel Linux
Processamento de Pacote de Rede
Kernel Bypass
description O kernel Linux é um componente central das aplicações de rede, estando presente na maioria dos servidores em data centers. Com o tempo, à medida que servidores e placas de rede evoluíram para atender tecnologias de rede com demandas de alto throughput e baixa latência, o kernel tornou-se um gargalo, impedindo as aplicações de rede de utilizarem a capacidade máxima do hardware. Nesse cenário, diferentes frameworks de processamento de pacotes surgiram para solucionar esse gargalo. Os dois principais são o DPDK e XDP, com propostas diferentes para atingir altas taxas de processamento. DPDK adota o by- pass do kernel, excluindo-o do processamento e levando os pacotes para o user space. Já o XDP, por outro lado, processa os pacotes dentro do kernel, de forma antecipada comparada ao processamento padrão. Em conjunto com isso, o paradigma de computação em nuvem, atualmente disponível na maioria dos data centers, traz a virtualização como tecnologia fundamental. Com múltiplas aplicações e sistemas sendo executados no mesmo host, surge outro problema, o de competição de recursos. Assim, essa dissertação executa experimentos que buscam avaliar como a presença de um ambiente virtual de computação em nuvem pode interferir no desempenho de ambos DPDK e XDP. Os resultados mostram que embora o processamento “dentro do kernel” traga mais segurança e integração com sistema, essas exatas medidas de segurança causam perda de desempenho ao XDP. Além disso, o XDP também demonstra ser o mais afetado pela presença do ambiente virtual, considerando a taxa de throughput e também a perda de pacotes. Por outro lado, existe um dilema ao utilizar o XDP, que não somente é possível alcançar maior segurança, mas também em relação ao uso de recursos, já que o DPDK aloca um núcleo de CPU completo para utilizar no processamento de pacotes. Também, dependendo do processamento sendo feito pelo framework, como quando depende de uso intenso de CPU, o DPDK oferece uma perda considerável de desempenho do throughput.
publishDate 2021
dc.date.accessioned.fl_str_mv 2021-12-13T19:21:24Z
dc.date.available.fl_str_mv 2021-12-13T19:21:24Z
dc.date.issued.fl_str_mv 2021-08-26
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/masterThesis
format masterThesis
status_str publishedVersion
dc.identifier.citation.fl_str_mv FREITAS, Eduardo Felipe Fonseca de. Experimental Evaluation on Packet Processing Frameworks under Virtual Environments. 2021. Dissertação (Mestrado em Ciência da Computação) - Universidade Federal de Pernambuco, Recife, 2021.
dc.identifier.uri.fl_str_mv https://repositorio.ufpe.br/handle/123456789/42176
identifier_str_mv FREITAS, Eduardo Felipe Fonseca de. Experimental Evaluation on Packet Processing Frameworks under Virtual Environments. 2021. Dissertação (Mestrado em Ciência da Computação) - Universidade Federal de Pernambuco, Recife, 2021.
url https://repositorio.ufpe.br/handle/123456789/42176
dc.language.iso.fl_str_mv eng
language eng
dc.rights.driver.fl_str_mv info:eu-repo/semantics/openAccess
eu_rights_str_mv openAccess
dc.publisher.none.fl_str_mv Universidade Federal de Pernambuco
dc.publisher.program.fl_str_mv Programa de Pos Graduacao em Ciencia da Computacao
dc.publisher.initials.fl_str_mv UFPE
dc.publisher.country.fl_str_mv Brasil
publisher.none.fl_str_mv Universidade Federal de Pernambuco
dc.source.none.fl_str_mv reponame:Repositório Institucional da UFPE
instname:Universidade Federal de Pernambuco (UFPE)
instacron:UFPE
instname_str Universidade Federal de Pernambuco (UFPE)
instacron_str UFPE
institution UFPE
reponame_str Repositório Institucional da UFPE
collection Repositório Institucional da UFPE
bitstream.url.fl_str_mv https://repositorio.ufpe.br/bitstream/123456789/42176/2/license.txt
https://repositorio.ufpe.br/bitstream/123456789/42176/1/DISSERTA%c3%87%c3%83O%20Eduardo%20Felipe%20Fonseca%20de%20Freitas.pdf
https://repositorio.ufpe.br/bitstream/123456789/42176/3/DISSERTA%c3%87%c3%83O%20Eduardo%20Felipe%20Fonseca%20de%20Freitas.pdf.txt
https://repositorio.ufpe.br/bitstream/123456789/42176/4/DISSERTA%c3%87%c3%83O%20Eduardo%20Felipe%20Fonseca%20de%20Freitas.pdf.jpg
bitstream.checksum.fl_str_mv c59d330e2c454f71974f5866a0e8a96a
80caacdc93af162bebc42d542e7f8c06
60ee548aebecf80893132720fc297dec
6ade8c76e22dff8052be57fa8d999519
bitstream.checksumAlgorithm.fl_str_mv MD5
MD5
MD5
MD5
repository.name.fl_str_mv Repositório Institucional da UFPE - Universidade Federal de Pernambuco (UFPE)
repository.mail.fl_str_mv attena@ufpe.br
_version_ 1802311009854029824