4 research outputs found

    The Role of Inter-Controller Traffic for Placement of Distributed SDN Controllers

    Get PDF
    We consider a distributed Software Defined Networking (SDN) architecture adopting a cluster of multiple controllers to improve network performance and reliability. Besides the Openflow control traffic exchanged between controllers and switches, we focus on the control traffic exchanged among the controllers in the cluster, needed to run coordination and consensus algorithms to keep the controllers synchronized. We estimate the effect of the inter-controller communications on the reaction time perceived by the switches depending on the data-ownership model adopted in the cluster. The model is accurately validated in an operational Software Defined WAN (SDWAN). We advocate a careful placement of the controllers, that should take into account both the above kinds of control traffic. We evaluate, for some real ISP network topologies, the delay tradeoffs for the controllers placement problem and we propose a novel evolutionary algorithm to find the corresponding Pareto frontier. Our work provides novel quantitative tools to optimize the planning and the design of the network supporting the control plane of SDN networks, especially when the network is very large and in-band control plane is adopted. We also show that for operational distributed controllers (e.g. OpenDaylight and ONOS), the location of the controller which acts as a leader in the consensus algorithm has a strong impact on the reactivity perceived by switches.Comment: 14 page

    Gerência do ciclo de vida de VNFs e implementação de serviços distribuídos na rede

    Get PDF
    Orientador: Elias Procópio Duarte Jr.Coorientador: Rogério Correa TurchettiDissertação (mestrado) - Universidade Federal do Paraná, Setor de Ciências Exatas, Programa de Pós-Graduação em Informática. Defesa : Curitiba, 29/06/2018Inclui referências: p.64-69Área de concentração: Ciência da computaçãoResumo: A Virtualização de Funções de Rede (Network Function Virtualization - NFV) oferece uma alternativa para projetar, desenvolver e gerenciar serviços de rede. Através de técnicas de virtualização, serviços que antes eram oferecidos em hardware especializado agora são disponibilizados como Funções Virtualizadas de Rede (Virtualized Network Functions - VNFs) e executam em hardware genérico (e.g., arquitetura x86). Esta dissertação tem como objetivo investigar as vantagens que NFV oferece para implantar e gerenciar VNFs dentro da própria rede. As contribuições são divididas em duas partes. A primeira parte explora o gerenciamento de VNFs e a segunda descreve implementações de VNFs. As soluções existentes para o gerenciamento do ciclo de vida de VNFs são complexas e exigem um grande entendimento da infraestrutura subjacente. Uma das contribuições deste trabalho é a especificação de uma arquitetura para o VNF Manager (VNFM), de forma a permitir a compatibilidade entre diferentes plataformas NFV, além de simplificar as operações de gerência, na medida em que diminui a necessidade de que o operador das funções conheça os detalhes da infraestrutura virtualizada. Resultados experimentais demonstram a efetividade da arquitetura proposta, avaliando individualmente cada operação do ciclo de vida. A segunda contribuição aborda a sincronização consistente do plano de controle distribuído em Redes Definidas por Software (Software Defined Network - SDN). Para tanto, é proposta a VNF-Consensus, uma VNF que implementa o algoritmo Paxos para garantir a consistência entre múltiplos controladores SDN. Com a VNF-Consensus, os controladores são desacoplados das tarefas de sincronização e podem executar em paralelo suas atividades no plano de controle. Resultados experimentais demonstram os benefícios obtidos pelo uso da VNF-Consensus, em especial na redução na carga dos controladores. Por fim, a última contribuição detalha o AnyBone: umbackbone virtual que implementa uma VNF para oferecer serviços de difusão de mensagens implementados na própria rede. Os diversos serviços de difusão são frequentemente utilizados para a construção de aplicações distribuídas e tolerante a falhas. Em geral, a difusão é implementada na própria aplicação, aumentando a complexidade no desenvolvimento. Neste contexto, o AnyBone oferece uma primitiva de difusão confiável e três primitivas de difusão ordenada de mensagens: FIFO (First-In First-Out), causal e atômica. Em particular, a solução proposta garante a ordem das mensagens através da utilização um sequenciador, denominado de VNF-Sequencer, que é implementado como uma VNF. Resultados experimentais são apresentados e a VNF-Sequencer é avaliada em termos de vazão e latência. Palavras-chave: Sistemas Distribuídos, Virtualização de Funções de Rede, Difusão Confiável.Abstract: Network Function Virtualization (NFV) allows the deployment of network services that have been usually offered as middleboxes based on specialized hardware as Virtualized Network Functions (VNFs) that are executed on off-the-shelf hardware. The contributions of this dissertation are of two types: the first is related to the investigation of strategies to improve NFV management practices, and the second is related to the investigation of the feasibility of offering distributed systems services within the network. Current solutions for VNF lifecycle management are complex and require a deep understanding of the underlying infrastructure. One of the contributions of this work is the specification of an architecture for the ETSI VNF Manager (VNFM). The proposed VNFM improves the compatibility of different NFV platforms, and simplify management operations and reduce the level of knowledge required about details of the infrastructure. Experimental results demonstrate the effectiveness of the proposed management architecture, each lifecycle operation was individually evaluated. The second contribution of this dissertation by itself consists of two parts. The first was proposed in the context of the requirements for consistency whenever the control plane of Software Defined Networks (SDN) is distributed - usually it is centralized, but there are several reasons to employ multiple controllers. We propose VNF-Consensus, a VNF that implements the Paxos algorithm to ensure consistency among multiple SDN controllers. With VNF-Consensus, controllers are decoupled from synchronization tasks and can execute their tasks without this extra burden. Experimental results demonstrate the benefits obtained by using VNF-Consensus, especially the reduction of the load on controllers. Finally, the last contribution introduces AnyBone: a virtual backbone that implements a VNF to provide broadcast services that are deployed on the network itself. Several broadcast services which are often used for building distributed and fault tolerant applications were implemented. In general, these broadcast abstractions are implemented as applications at end-user hosts. In this context, AnyBone provides - within the network - a reliable broadcast primitive and three ordered broadcast primitives: FIFO (First-In First-Out), causal, and atomic. In particular, the proposed solution ensures the order of the messages by using a sequencer, called VNF-Sequencer, which was implemented as a VNF. Experimental results are presented and the VNF-Sequencer is evaluated in terms of throughput and latency. Keywords: Fault Tolerance, Network Function Virtualization, Reliable Broadcast

    Construindo sistemas distribuídos tolerantes a falhas e eficientes em redes SDN com NFV

    Get PDF
    Orientador : Elias P. Duarte Jr.Tese (doutorado) - Universidade Federal do Paraná, Setor de Ciências Exatas, Programa de Pós-Graduação em Informática. Defesa: Curitiba, 15/08/2017Inclui referências : f. 111-117Resumo: Os sistemas de virtualização estão mudando a maneira de projetar e operar as redes de computadores. A Virtualização de Funções de Rede (NFV - Network Function Virtualization) é uma tecnologia emergente que implementa, utilizando técnicas de virtualização, funções de rede tradicionalmente fornecidas em dispositivos de hardware específicos. O presente trabalho tem por objetivo tirar proveito destas novas tecnologias para implementar, dentro da própria rede, componentes clássicos para a construção de sistemas tolerantes a falhas. A primeira parte do trabalho descreve implementações de serviços de detecção de falhas. A função virtualizada de rede NFV-FD (FD - Failure Detector) é executada em uma rede SDN (Software Defined Network), utilizando informações disponibilizadas por um controlador e por switches para monitorar o estado de processos e enlaces de comunicação. A NFV-FD foi implementada e seus benefícios são apresentados através de experimentos reportados no trabalho. Foi também implementado um serviço para detecção de falhas para a Internet (IFDS - Internet Failure Detection Service), que pode ser configurado de acordo com as necessidades de QoS (Quality of Service) das aplicações. Em particular, são propostas estratégias que permitem a configuração do IFDS tendo em vista os requisitos de múltiplas aplicações. O IFDS é composto por uma MIB (Management Information Base) SNMP (Simple Network Management Protocol) denominada f dMIB. Um protótipo do serviço foi implementado e resultados experimentais são apresentados, obtidos tanto em redes locais como na Internet. Outra contribuição desta tese relacionada aos detectores de falhas trata da questão do cômputo do timeout, sendo proposta uma estratégia denominada tuning_ que reajusta o valor do timeout de acordo com os tempos de comunicação observados. Nos experimentos, tuning_ apresentou um excelente desempenho, reduzindo de forma expressiva o número de falsas suspeitas. Em outra contribuição tratamos do problema da sincronização consistente entre múltiplos controladores SDN. Uma função virtualizada de rede denominada de VNF-Consensus, é proposta para garantir a sincronização consistente entre os controladores envolvidos. VNF-Consensus implementa o algoritmo de consenso Paxos e com sua utilização os controladores ficam desacoplados da sincronização. Os experimentos mostraram que utilizando a VNF-Consensus, o plano de controle é sincronizado sem aumentar a carga de trabalho nos controladores. Por último, propomos AnyBone, uma NFV que oferece as primitivas de difusão confiável para garantir a entrega ordenada das mensagens transmitidas na rede. O AnyBone é baseado em um sequenciador que gerencia as transmissões e entrega as mensagens ordenadas aos processos, além de oferecer uma API para as aplicações trocarem mensagens utilizando as primitivas de difusão atômica e confiável. Os resultados experimentais demonstram a eficiência da estratégia proposta, bem como seu custo, em termos da latência da difusão em diferentes cenários, ou seja, variando o número de participantes e o tamanho das mensagens transmitidas. O conjunto de contribuições desta tese permite concluir que é viável utilizar a própria rede para implementar com eficiência componentes clássicos de tolerância a falhas que podem ser disponibilizados como serviços para aplicações distribuídas diversas. Palavras-chave: Função Virtualizada de Rede, Tolerância a Falhas, Sistemas Distribuídos, Redes Definidas por Software.Abstract: Virtualization systems are changing the way networks are designed and deployed. Network Function Virtualization (NFV) is an emerging technology that employs virtualization to transform network devices into virtual entities. In this thesis, we take advantage of this technology to implement classical distributed systems abstractions within the network. As a result, we aim to be able to build efficient fault-tolerant distributed applications. Initially, we describe implementations of failure detectors. A virtual network function called NFV-FD (FD stands for - Failure Detector) is implemented in a Software Defined Network (SDN) and uses information obtained from a SDN controller to monitor processes and determine their state. In addition, NFV-FD also provides information about the state of communication links. NFV-FD was implemented and experimental results are reported. We also implemented an Internet Failure Detection Service (IFDS), which can be used to provide the Quality of Service (QoS) level required by the applications. In particular, we proposed two strategies to configure IFDS when multiple processes are monitored with diferent QoS requirements. IFDS was implemented with SNMP (Simple Network Management Protocol). We have implemented a prototype of the service and experimental results are presented running both on a single LAN and on the Internet. Another contribution of this thesis also related to failure detectors addresses the question of how to compute a precise timeout interval. We propose the tuning strategy that dynamically adjusts the timeout interval in a way that better reflects a varying behavior of the communication channel. Experimental results obtained from running tuning show that the strategy reduces significantly the number of false detections. The next contribution of the thesis refers to achieving consistent synchronization across multiple SDN controllers. In order to ensure consistent synchronization among controllers of a SDN distributed control plane, we propose the virtual network function VNF-Consensus. VNF-Consensus implements the Paxos consensus algorithm so that controllers are decoupled from synchronization tasks. Experimental results show that our solution is able to guarantee a consistent control plane without increasing the number of tasks a controller has to execute. Finally, we propose AnyBone, a VNF that others reliable and atomic broadcast primitives, which ensures that messages are delivered by all the processes and in the same total order. AnyBone relies on a sequencer to manage the transmissions and enforce the order. Furthermore, AnyBone provides an API for applications to be able to employ atomic and reliable broadcast primitives. Experimental results show that AnyBone provides an efficient strategy to ensure the ordered message delivery to all processes. We measured the broadcast latency in diferent scenarios, i. e., increasing the number of processes involved in the communication and also the size of the transmitted messages. By taking into account the results of the contributions of this thesis, we can conclude that it is not only feasible, but also efficient to use the network itself in order to deploy classic fault tolerance abstractions which can be used to build fault-tolerant distributed applications. Keywords: Network Function Virtualization, Fault Tolerance, Distributed Systems, Software Defined Networking
    corecore