Redes de Computadores I - 2013.1

Aplicações

    O uso de redes definidas por Software visa mudar o paradigma de redes e, portanto, podemos esperar aplicações de SDN em tudo que envolva redes de computadores. Porém, o meio acadêmico tem focado em alguns pontos específicos como os descritos abaixo:





    Uma aplicação para SDN é tentar garantir qualidade de serviço (QoS) em redes virtuais. Em [8] é proposto o sistema híbrido QFlow, baseado na plataforma de virtualização Xen e no protocolo OpenFlow. A arquitetura do sistema QFlow é baseada no XenFlow, onde plano de controle é composto pelas máquinas virtuais Xen e o plano de dados por um comutador OpenFlow no domínio privilegiado, que possui acesso direto ao hardware [9]. No QFlow, a qualidade de serviço é garantida através do controle, monitoramento e distribuição dos recursos da rede física para as diversas redes virtuais, de acordo com o tipo da rede e sua prioridade com relação às outras redes. Além disso, há um algoritmo que distribui os recursos ociosos na rede física entre as redes virtuais, mais uma vez de acordo com sua prioridade, que é determinada através de acordos de nível de serviços.





    A aplicação mais básica de SDN é a programabilidade da rede. Em [2], que introduz a ferramenta RouteFlow, foi criada uma rede virtual em um único PC, o que é aplicável em data-centers, usando as ferramentas: KVM/QMU para virtualização assistida por hardware; XEN que faz paravirtualização; e LXC que usa virtualização baseada no sistema operacional.

    Foi utilizado então as ferramentas Open vSwitch rodando o protocolo OpenFlow para a criação dos comutadores que foram controlados pelo RF-Server. O RouteFlow funcionaria então como uma aplicação proxy para o controlador OpenFlow que além de ver a rota dos pacotes no plano de dados também teria conhecimento e faria constantes atualizações da topologia da rede.





    Neste mesmo escopo de programação da rede, existe o uso de SDN para a criação de APIs (Application Programming Interface). A API é uma interface que permite que as funcionalidades das Redes Definidas por Software sejam usadas em programas com a linguagem de programação especificada. No artigo [1] é apresentada uma arquitetura para a definição de APIs para SDN. Para isso, é explicado o conceito de separação de planos e apresentado os tipos de comunicação que deve ocorrer entre o plano de controle e o plano de dados. Para isso, são definidas 3 interfaces, nomeadas Southbound Interface, Northbound Interface e East-West Interface . Como mostrado na figura abaixo.



    A primeira interface definida estabelece a comunicação entre o controlador e os elementos encaminhadores. Essa interface visa prover: programabilidade e rápida reconfiguração; uma abstração dos recursos físicos da rede, para que eles sejam compartilhados e controlados; e garantir isolamento do tráfego da rede. A segunda interface atua entre as aplicações e o controlador. Ela deve definir os protocolos de roteamento, de acordo com a aplicação. Além disso, ela deve monitorar os recursos e aplicar políticas de controle de acesso, segurança, entre outros. Já a terceira interface visa garantir a compatibilidade da API com diversos controladores diferentes.





    Com o crescimento dos data centers e o advento da comutação em nuvem, redes OpenFlow são cada vez mais usadas, porém, as redes definidas por Software baseadas em OpenFlow apresentam alguns desafios pois elas não possuem suporte à um protocolo da camada de aplicação, além disso fazer muitas verificações de fluxo num único comutador pode afetar o desempenho da rede. Portanto em [6] é proposto a ferramenta vNFC (Virtual Networking Function Container) que seria uma máquina virtual dedicada para implementar as funções da rede. O vNFC ficaria entre as máquinas virtuais da rede e os comutadores, e poderia agir como um firewall dedicado ou um formatador do tráfego, o que simplificaria o trabalho dos comutadores.





    Um outro tópico cada vez mais importante em redes é a gestão de energia [Minicurso], com o uso de SDN é possível desviar parte do tráfego para não sobrecarregar uma máquina ou até mesmo desviar todo o tráfego de pacotes para que a máquina possa ser desligada, o que é conhecido como migração de fluxo. Desta forma é possível uma melhor alocação dos recursos, que é de extrema importância para grandes Data-Centers





    As aplicações de SDN podem ser usadas em redes de larga escala. Mas nem sempre é possível saber se aplicação funcionará de maneira correta e os testes em redes de larga escala podem ser custosos. Para isso, em [5] é apresentado um simulador para aplicações de SDN, o Mininet, que pode ser executado em um computador pessoal básico. O Mininet permite modelar grandes Redes Definidas por Software para que sejam testadas suas aplicações. O artigo ressalta que esse simulador é uma maneira rápida, e de baixo custo, de se implementar e testar novos protocolos, novas arquiteturas de redes entre outros.

Anterior Topo Próximo