• Nenhum resultado encontrado

5.8 Resultados e Discussão

5.8.3 Algoritmo de Fluxo Máximo para Criação de Caminhos de Controle

Nesta seção avaliamos o impacto no número de desconexões utilizando o algoritmo que define caminhos de controles entre switches e controlador. Os resultados exibem a junção dos três algoritmos (Reposicionamento dos controladores (R) + Balanceamento de Carga (B) + FluxoMax) todos propostos neste capítulo. A execução conjunta desses algoritmos implica na maior redução no número de desconexões obtidas dentre todos os resultados deste capítulo. A Figura 5.17 mostra os resultados para a rede RNP onde nota-se apenas uma redução quando a restrição de atraso é de 25ms comparado com as estratégias exibidas anteriormente. A rede RNP possui poucos enlaces redundantes, por isso é mais difícil a criação de caminhos de controles distintos. Em alguns casos, como a restrição de 75ms o resultado foi pior do que os algoritmos utilizados de maneira isolada.

0 3 6 9 12 15 125 150 175 200 Qu an ti d ad e d e d e sco n ex õ e s

Restrição entre controladores e switch (ms)

Cogenet - Controladores Heterogêneos

Figura 5.17. Comparação dos algoritmos de reposicionamento, balanceamento e criação de fluxos (RNP)

Já na avaliação da rede Pern (Figura 5.18) conseguimos obter uma redução de até 63% na quantidade de caminhos de controle afetados por uma falha. Em 7 dos 8 cenários analisados houve uma redução significativa na quantidade de desconexões.

Figura 5.18. Comparação dos algoritmos de reposicionamento, balanceamento e criação de fluxos (Rede Pern)

Na rede Cogent os resultados (Figura 5.19) foram melhorados em todos os cenários avaliados. Conseguindo uma redução de até 57% na quantidade de desconexões quando comparado com a solução inicial gerada pelo modelo descrito no capítulo 4. 0 2 4 6 8 25 50 75 100 125 150 175 200 Qu an ti d ad e d e d e sco n ex õ e s

Restrição entre controlador e switch (ms)

RNP - Controladores Heterogêneos

Solução Inicial Reposicionamento (R) Balanceamento (B) R + B +FluxoMax 0 2 4 6 8 10 25 50 75 100 125 150 175 200 Qu an ti d ad e d e d e sco n ex õ e s

Restrição entre controlador e switch (ms)

Pern - Controladores Heterogêneos

Solução Inicial Reposicionamento (R) Balanceamento (B) R + B +FluxoMax

Figura 5.19. Comparação dos algoritmos de reposicionamento, balanceamento e criação de fluxos (Rede Cogent)

A utilização dos algoritmos propostos de forma conjunta mostrou-se mais eficiente quando comparado com a execução isolada dos algoritmos. Em trabalhos futuros pretende-se analisar se diferentes sequências de execuções desses mesmos algoritmos produzem resultados diferentes e o porquê deste comportamento.

5.9

Considerações Finais

Neste capítulo foram apresentados três algoritmos que complementam a solução apresentada no capítulo 4. Os algoritmos propostos30 realizam: (1) Realocação dos

controladores SDN; (2) Balanceamento do número de switches entre controladores e (3) Criação de caminhos de controle entre switch e controlador. O objetivo de todos os algoritmos é minimizar o impacto de uma falha de algum enlace da rede nos caminhos de controle da rede SDN.

Os resultados mostraram uma redução significativa no número de desconexões entre switch e controlador após a aplicação dos algoritmos propostos em comparação com a solução gerada pelo modelo que minimiza o custo proposto no capítulo 4. Na rede Pern, por exemplo, em alguns dos cenários testados houve redução de mais de 50% do número de desconexões. Cabe destacar que os algoritmos propostos podem ser aplicados em qualquer cenário de redes SDN em que os controladores já estejam alocados. Os resultados indicam que a execução conjunta dos três algoritmos alcança

30 Disponível em: https://github.com/marceloanderson88/SDN-Path-Creation 0 3 6 9 12 15 125 150 175 200 Qu an ti d ad e d e d esco n ex õ e s

Restrição entre controlador e switch (ms)

Cogent - Controladores Heterogêneos

Solução Inicial Reposicionamento (R) Balanceamento (B) R + B +FluxoMax

em média os melhores resultados possíveis ao invés de utilizar os algoritmos propostos neste capítulo individualmente.

Como trabalhos futuros pretendemos levar em consideração outras técnicas que melhorem a dependabilidade da rede, como por exemplo, a adição de redundância em pontos estratégicos da rede.

6

6.

CONCLUSÕES

O uso da tecnologia de virtualização em computação teve origem há aproximadamente 50 anos quando a IBM criou uma das primeiras máquinas virtuais da história. No entanto, em redes de computadores a adoção de virtualização levou muito mais tempo para começar a ser introduzida e se tornasse realidade, provocando uma nova forma de pensar sobre sua arquitetura, protocolos e funcionamento. Tecnologias e paradigmas baseados em algum tipo de virtualização de recursos relacionados a redes de computadores foram introduzidos há cerca de 20 anos atrás com, por exemplo, Virtual Private Networks (VPN). Em seguida, nos últimos anos, houve o surgimento de diversas outras tecnologias como: Virtual LAN (VLAN), Multiprotocol Label Switching (MPLS),

Generalized Multi-Protocol Label Switching (GMPLS), Network Virtualiztion (NV), Cloud Computing, Software Defined Network (SDN) e Network Function Virtualization (NFV).

Nesse contexto, virtualização de redes de computadores e paradigmas, como SDN, trazem consigo uma nova forma de gerenciar redes de computadores. Há a quebra de uma integração vertical de dispositivos proprietários e uma maior flexibilidade na gerência de recursos na rede. Dessa forma, possibilidades de utilização mais eficientes de recursos são possíveis. No entanto, novas abordagens precisam ser criadas para usufruir do leque de opções aberto por essas novas tecnologias.

Consequentemente, essa tese teve como objetivo explorar e propor novas soluções para problemas de gerenciamento de recursos em redes de computadores através de virtualização de redes e redes definidas por software. Em resumo, dois problemas foram atacados: (1) O problema de alocação de máquinas virtuais; e (2) O problema de alocação de controladores SDN. Métricas de disponibilidade foram consideradas como parte importante na geração das soluções encontradas.

Um aspecto importante ao se discutir sobre tecnologias de virtualização são as estratégias de gerenciamento empregadas a fim de prover mecanismos de alocação de forma eficiente e confiável. Considerando a alocação de máquinas virtuais, propomos no

Capítulo 3 uma heurística para alocação de redes virtualizadas considerando a disponibilidade da rede e atributos como capacidade de CPU e enlace. Essa heurística é derivada da meta-heurística GRASP (Greedy Randomized Adaptive Search

Procedures). Os resultados mostraram uma grande taxa de aceitação das requisições

de alocações de redes virtuais e uma melhora na disponibilidade da rede quando comparada a outras estratégias na literatura.

Como parte importante na gerência de fluxos em redes por meio de virtualização de enlaces, destacamos as Redes Definidas por Software (SDN). Em relação a redes SDN, temos um problema em decidir qual o tipo de controlador SDN é mais adequado, quais protocolos devem ser utilizados, a capacidade ideal de cada controlador, bem como qual a localização destes novos controladores. Tais questões são fundamentais e influenciam diretamente aspectos como desempenho, custo, resiliência, tempo de instalação de regras nos switches, tempo de convergência entre controladores e escalabilidade da rede. Por isso, no capítulo 4 apresentamos um modelo baseado no uso de programação linear aplicado ao problema de alocação de controladores em uma rede SDN buscando minimizar o custo total de recobrimento. Achamos uma solução ótima que minimiza o custo de alocação em redes reais analisando as principais características que afetam o custo final de cobertura da rede por controladores SDN. Os resultados mostram uma correlação positiva entre o tamanho da topologia e a quantidade de controladores SDN, mas isso não acontece em relação ao tempo de atraso médio entre os enlaces, mesmo considerando restrições de atraso de controlador para switches e entre controladores. Além disso, as análises realizadas mostram que considerar todos os controladores com a mesma capacidade na rede leva a alocações que acabam custando até 40% mais do que uma abordagem que permite a alocação de controladores com capacidade e custo distintos.

De forma complementar ao modelo que resolve o problema de alocação de controladores com um custo mínimo de cobertura da rede, foram criadas três heurísticas para que buscam juntas minimizar o número de caminhos de controle afetados em caso de falha de um enlace em redes SDN. A primeira heurística proposta realoca os controladores previamente alocados considerando todas as restrições envolvidas no problema, como atraso entre dispositivos e capacidade dos controladores, minimizando o número de desconexões entre controlador e switch quando um enlace falha. A segunda heurística realiza o balanceamento de carga de acordo com a capacidade dos controladores alocados, o que minimiza uma sobrecarga dos controladores e dos enlaces da rede, resultando também na melhoria do número de caminhos de controle

afetados quando há alguma falha. Por fim, a terceira heurística define caminhos de controle de forma a não sobrecarregar um pequeno conjunto de enlaces físicos, criando caminhos diferentes entre controladores e switches. Aplicando as três heurísticas propostas nas soluções obtidas através do modelo linear descrito no capítulo 4, temos em alguns cenários uma redução de mais de 50% no número de caminhos de controle afetados quando ocorre uma falha de um enlace.

Documentos relacionados