In-network computing : overcoming constraints, failures, and configuration challenges

Detalhes bibliográficos
Ano de defesa: 2024
Autor(a) principal: Parizotto, Ricardo
Orientador(a): Schaeffer Filho, Alberto Egon
Banca de defesa: Não Informado pela instituição
Tipo de documento: Tese
Tipo de acesso: Acesso aberto
Idioma: eng
Instituição de defesa: Não Informado pela instituição
Programa de Pós-Graduação: Não Informado pela instituição
Departamento: Não Informado pela instituição
País: Não Informado pela instituição
Palavras-chave em Português:
Link de acesso: http://hdl.handle.net/10183/291481
Resumo: Switches programáveis são dispositivos de encaminhamento de rede que permitem a execução de funcionalidades personalizadas que funcionam na taxa de linha. Ao contrário de switches com funcionalidade fixa, switches programáveis oferecem maior versatilidade e potencial de inovação. As vantagens dos switches programáveis leva ram os pesquisadores a transferir funcionalidades anteriormente realizadas em servi dores para a própria rede, resultando no conceito de In-Network Computing (INC). No entanto, a transferência de funcionalidades para o plano de dados está sujeita a várias distinções em comparação com a forma como a computação é tradicional mente realizada em servidores. Esta tese investiga o paradigma de computação em rede sob três aspectos diferentes que o diferenciam da computação tradicional. Em primeiro lugar, estudamos as restrições impostas pelo plano de dados, que podem impactar a transferência de uma funcionalidade de aplicação para o hardware do switch. Propomos uma terminologia e uma taxonomia de considerações de design a serem utilizados ao transferir uma funcionalidade para o plano de dados dos dis positivos de rede. Apresentamos então um sistema chamado NetGVT, que utiliza as considerações para construir um design personalizado para transferir a sincro nização de tempo virtual para switches. Além disso, mostramos que o NetGVT pode acelerar simulações distribuídas e superar uma solução tradicional que utiliza apenas servidores. No entanto, uma vez que movemos a computação para o plano de dados, falhas na INC podem interromper o sistema e torná-lo indisponível. Por tanto, o segundo aspecto que investigamos é o impacto das falhas e os requisitos de consistência necessários para INCs existentes permanecerem corretas após uma falha. Em resposta, propomos o RESIST, um sistema que aplica técnicas eficientes e blocos de construção para fornecer tolerância a falhas para a computação em rede. Embora observemos que a tolerância a falhas pode ser alcançada sem comprome ter os ganhos de desempenho obtidos com a INC, gerenciar a funcionalidade em dispositivos de encaminhamento revela um processo complexo e demorado em com paração com a execução em servidores tradicionais. Para entender esse desafio de configuração, investigamos métodos para simplificar o gerenciamento de tolerância a falhas na INC usando intenções de alto nível. Propomos um sistema chamado Araucaria, que facilita a especificação de intenções em uma linguagem semelhante à natural, e um processo para refinamento de intenções para instrumentar INCs com blocos de construção de tolerância a falhas. Em seguida, demonstramos um exemplo prático usando o NetGVT, mostrando a viabilidade e escalabilidade das abordagens propostas nesta tese, tanto em um testbed com hardware de switches programáveis reais quanto em um emulador de modelo de comportamento.
id URGS_1802d995a23affc66f031c3e292232c9
oai_identifier_str oai:www.lume.ufrgs.br:10183/291481
network_acronym_str URGS
network_name_str Biblioteca Digital de Teses e Dissertações da UFRGS
repository_id_str
spelling Parizotto, RicardoSchaeffer Filho, Alberto EgonHaque, Israat2025-05-10T06:56:09Z2024http://hdl.handle.net/10183/291481001256399Switches programáveis são dispositivos de encaminhamento de rede que permitem a execução de funcionalidades personalizadas que funcionam na taxa de linha. Ao contrário de switches com funcionalidade fixa, switches programáveis oferecem maior versatilidade e potencial de inovação. As vantagens dos switches programáveis leva ram os pesquisadores a transferir funcionalidades anteriormente realizadas em servi dores para a própria rede, resultando no conceito de In-Network Computing (INC). No entanto, a transferência de funcionalidades para o plano de dados está sujeita a várias distinções em comparação com a forma como a computação é tradicional mente realizada em servidores. Esta tese investiga o paradigma de computação em rede sob três aspectos diferentes que o diferenciam da computação tradicional. Em primeiro lugar, estudamos as restrições impostas pelo plano de dados, que podem impactar a transferência de uma funcionalidade de aplicação para o hardware do switch. Propomos uma terminologia e uma taxonomia de considerações de design a serem utilizados ao transferir uma funcionalidade para o plano de dados dos dis positivos de rede. Apresentamos então um sistema chamado NetGVT, que utiliza as considerações para construir um design personalizado para transferir a sincro nização de tempo virtual para switches. Além disso, mostramos que o NetGVT pode acelerar simulações distribuídas e superar uma solução tradicional que utiliza apenas servidores. No entanto, uma vez que movemos a computação para o plano de dados, falhas na INC podem interromper o sistema e torná-lo indisponível. Por tanto, o segundo aspecto que investigamos é o impacto das falhas e os requisitos de consistência necessários para INCs existentes permanecerem corretas após uma falha. Em resposta, propomos o RESIST, um sistema que aplica técnicas eficientes e blocos de construção para fornecer tolerância a falhas para a computação em rede. Embora observemos que a tolerância a falhas pode ser alcançada sem comprome ter os ganhos de desempenho obtidos com a INC, gerenciar a funcionalidade em dispositivos de encaminhamento revela um processo complexo e demorado em com paração com a execução em servidores tradicionais. Para entender esse desafio de configuração, investigamos métodos para simplificar o gerenciamento de tolerância a falhas na INC usando intenções de alto nível. Propomos um sistema chamado Araucaria, que facilita a especificação de intenções em uma linguagem semelhante à natural, e um processo para refinamento de intenções para instrumentar INCs com blocos de construção de tolerância a falhas. Em seguida, demonstramos um exemplo prático usando o NetGVT, mostrando a viabilidade e escalabilidade das abordagens propostas nesta tese, tanto em um testbed com hardware de switches programáveis reais quanto em um emulador de modelo de comportamento.Programmable switches are networking forwarding devices that allow customized, stateful functionalities to run at line rate. Unlike fixed-functionality switches, pro grammable switches offer higher versatility and innovation potential. The advan tages of programmable switches have led researchers to move functionality previously performed on servers to the network itself, resulting in the concept of In-Network Computing (INC). However, offloading functionalities to the data plane is subject to several distinctions compared to how computation is traditionally performed on servers. This thesis investigates the in-network computing paradigm under three dif ferent aspects that set it apart from traditional computation. Firstly, we study the constraints imposed by the data plane, which can impact the offloading of applica tion functionality to the switch hardware. We propose a terminology and taxonomy of design considerations to be used when offloading a functionality. We then present a system called NetGVT that employs the considerations to build a customized de sign that offloads virtual time synchronization to switches. Furthermore, we show that NetGVT can accelerate distributed simulations and outperform a traditional server-only solution. However, once we move the computation to the data plane, INC failures can disrupt the system and make it unavailable. Therefore, the sec ond aspect we investigate is the impact of failures and the necessary consistency requirements for existing INCs for correctness after failure. In response, we pro pose RESIST, a system that applies lightweight techniques and building blocks to provide fault tolerance for in-network computing. Although we observe that fault tolerance can be achieved without compromising the performance gains achieved with INC, managing the functionality at forwarding devices reveals a complex and time-consuming process compared to running them on traditional servers. To un derstand this configuration challenge, we investigate methods for simplifying INC fault tolerance management using high-level intents. We propose a system called Araucaria, which facilitates the specification of fault tolerance intents in a struc tured natural language and a process for intent refinement that instruments INCs with fault tolerance building blocks. Finally, we demonstrate a running example using NetGVT as a concrete use case, showing the feasibility and scalability of the proposed approaches in this thesis both in a testbed with real programmable switch hardware and in a behavior model emulator.application/pdfengSwitches programáveisPlano de Dados ProgramáveisTolerância a falhasComputação na redeIn-network computing : overcoming constraints, failures, and configuration challengesComputação em rede : superando restrições, falhas, e desafios de configuraçãoinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/doctoralThesisUniversidade Federal do Rio Grande do SulInstituto de InformáticaPrograma de Pós-Graduação em ComputaçãoPorto Alegre, BR-RS2024doutoradoinfo:eu-repo/semantics/openAccessreponame:Biblioteca Digital de Teses e Dissertações da UFRGSinstname:Universidade Federal do Rio Grande do Sul (UFRGS)instacron:UFRGSTEXT001256399.pdf.txt001256399.pdf.txtExtracted Texttext/plain263937http://www.lume.ufrgs.br/bitstream/10183/291481/2/001256399.pdf.txt7f6d1c026649443093180d0510914f6dMD52ORIGINAL001256399.pdfTexto completo (inglês)application/pdf1741044http://www.lume.ufrgs.br/bitstream/10183/291481/1/001256399.pdf9148d5110b89f2e35cd04a85b1fe51acMD5110183/2914812025-05-11 06:40:13.46716oai:www.lume.ufrgs.br:10183/291481Biblioteca Digital de Teses e Dissertaçõeshttps://lume.ufrgs.br/handle/10183/2PUBhttps://lume.ufrgs.br/oai/requestlume@ufrgs.br || lume@ufrgs.bropendoar:18532025-05-11T09:40:13Biblioteca Digital de Teses e Dissertações da UFRGS - Universidade Federal do Rio Grande do Sul (UFRGS)false
dc.title.pt_BR.fl_str_mv In-network computing : overcoming constraints, failures, and configuration challenges
dc.title.alternative.pt.fl_str_mv Computação em rede : superando restrições, falhas, e desafios de configuração
title In-network computing : overcoming constraints, failures, and configuration challenges
spellingShingle In-network computing : overcoming constraints, failures, and configuration challenges
Parizotto, Ricardo
Switches programáveis
Plano de Dados Programáveis
Tolerância a falhas
Computação na rede
title_short In-network computing : overcoming constraints, failures, and configuration challenges
title_full In-network computing : overcoming constraints, failures, and configuration challenges
title_fullStr In-network computing : overcoming constraints, failures, and configuration challenges
title_full_unstemmed In-network computing : overcoming constraints, failures, and configuration challenges
title_sort In-network computing : overcoming constraints, failures, and configuration challenges
author Parizotto, Ricardo
author_facet Parizotto, Ricardo
author_role author
dc.contributor.author.fl_str_mv Parizotto, Ricardo
dc.contributor.advisor1.fl_str_mv Schaeffer Filho, Alberto Egon
dc.contributor.advisor-co1.fl_str_mv Haque, Israat
contributor_str_mv Schaeffer Filho, Alberto Egon
Haque, Israat
dc.subject.por.fl_str_mv Switches programáveis
Plano de Dados Programáveis
Tolerância a falhas
Computação na rede
topic Switches programáveis
Plano de Dados Programáveis
Tolerância a falhas
Computação na rede
description Switches programáveis são dispositivos de encaminhamento de rede que permitem a execução de funcionalidades personalizadas que funcionam na taxa de linha. Ao contrário de switches com funcionalidade fixa, switches programáveis oferecem maior versatilidade e potencial de inovação. As vantagens dos switches programáveis leva ram os pesquisadores a transferir funcionalidades anteriormente realizadas em servi dores para a própria rede, resultando no conceito de In-Network Computing (INC). No entanto, a transferência de funcionalidades para o plano de dados está sujeita a várias distinções em comparação com a forma como a computação é tradicional mente realizada em servidores. Esta tese investiga o paradigma de computação em rede sob três aspectos diferentes que o diferenciam da computação tradicional. Em primeiro lugar, estudamos as restrições impostas pelo plano de dados, que podem impactar a transferência de uma funcionalidade de aplicação para o hardware do switch. Propomos uma terminologia e uma taxonomia de considerações de design a serem utilizados ao transferir uma funcionalidade para o plano de dados dos dis positivos de rede. Apresentamos então um sistema chamado NetGVT, que utiliza as considerações para construir um design personalizado para transferir a sincro nização de tempo virtual para switches. Além disso, mostramos que o NetGVT pode acelerar simulações distribuídas e superar uma solução tradicional que utiliza apenas servidores. No entanto, uma vez que movemos a computação para o plano de dados, falhas na INC podem interromper o sistema e torná-lo indisponível. Por tanto, o segundo aspecto que investigamos é o impacto das falhas e os requisitos de consistência necessários para INCs existentes permanecerem corretas após uma falha. Em resposta, propomos o RESIST, um sistema que aplica técnicas eficientes e blocos de construção para fornecer tolerância a falhas para a computação em rede. Embora observemos que a tolerância a falhas pode ser alcançada sem comprome ter os ganhos de desempenho obtidos com a INC, gerenciar a funcionalidade em dispositivos de encaminhamento revela um processo complexo e demorado em com paração com a execução em servidores tradicionais. Para entender esse desafio de configuração, investigamos métodos para simplificar o gerenciamento de tolerância a falhas na INC usando intenções de alto nível. Propomos um sistema chamado Araucaria, que facilita a especificação de intenções em uma linguagem semelhante à natural, e um processo para refinamento de intenções para instrumentar INCs com blocos de construção de tolerância a falhas. Em seguida, demonstramos um exemplo prático usando o NetGVT, mostrando a viabilidade e escalabilidade das abordagens propostas nesta tese, tanto em um testbed com hardware de switches programáveis reais quanto em um emulador de modelo de comportamento.
publishDate 2024
dc.date.issued.fl_str_mv 2024
dc.date.accessioned.fl_str_mv 2025-05-10T06:56:09Z
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/doctoralThesis
format doctoralThesis
status_str publishedVersion
dc.identifier.uri.fl_str_mv http://hdl.handle.net/10183/291481
dc.identifier.nrb.pt_BR.fl_str_mv 001256399
url http://hdl.handle.net/10183/291481
identifier_str_mv 001256399
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.format.none.fl_str_mv application/pdf
dc.source.none.fl_str_mv reponame:Biblioteca Digital de Teses e Dissertações da UFRGS
instname:Universidade Federal do Rio Grande do Sul (UFRGS)
instacron:UFRGS
instname_str Universidade Federal do Rio Grande do Sul (UFRGS)
instacron_str UFRGS
institution UFRGS
reponame_str Biblioteca Digital de Teses e Dissertações da UFRGS
collection Biblioteca Digital de Teses e Dissertações da UFRGS
bitstream.url.fl_str_mv http://www.lume.ufrgs.br/bitstream/10183/291481/2/001256399.pdf.txt
http://www.lume.ufrgs.br/bitstream/10183/291481/1/001256399.pdf
bitstream.checksum.fl_str_mv 7f6d1c026649443093180d0510914f6d
9148d5110b89f2e35cd04a85b1fe51ac
bitstream.checksumAlgorithm.fl_str_mv MD5
MD5
repository.name.fl_str_mv Biblioteca Digital de Teses e Dissertações da UFRGS - Universidade Federal do Rio Grande do Sul (UFRGS)
repository.mail.fl_str_mv lume@ufrgs.br || lume@ufrgs.br
_version_ 1846255902108155904