• Nenhum resultado encontrado

Etapa 3 – Simulações e Análise dos Resultados A) Montagem dos ambientes de testes:

6 AMBIENTE DE SIMULAÇÃO

O cenário proposto para a avaliação de desempenho nos ambientes de simulação com transmissão tradicional e OpenFlow desenvolvidos neste trabalho, é compostos pelos equipamentos descritos na seção (6.1 Componentes da Simulação), bem como com suas especificações técnicas listadas na seção (6.2 Especificação dos Equipamentos de Teste).

6.1 Componentes da Simulação

Para realizar as simulações deste trabalho, os seguintes equipamentos foram utilizados:

 Roteadores RA1 e RA2: roteadores de acesso. São responsáveis por receber e encaminhar os tráfegos entre o gerador de tráfego e os roteadores de interconexão através de interfaces de rede de 1000 Mbps.

 Roteadores RI1 e RI2: roteadores de interconexão. São responsáveis por encaminhar o tráfego recebido do roteador de acesso para o outro roteador de interconexão entre os Sistemas Autônomos, tanto no encaminhamento tradicional quanto no encaminhamento especializado OpenFlow através de interfaces de rede de 1000 Mbps. A versão de software utilizada nestes roteadores a implementação do OpenFlow versão 1.3, porém devido o controlador apenas suportar a versão 1.0, serão selecionados os campos compatível com versão.

 Gerador de Tráfego modelo IXIA IxN2X: gerador de tráfego utilizado para injetar o tráfego no ambiente de teste de acordo com o padrão definido para obter as medidas necessárias. O gerador possui um módulo integrado ao módulo de geração de tráfego que fornece estatísticas da transmissão e recepção de pacotes incluindo latência mínima, média e máxima, variação da latência e perda de pacotes. O tráfego é injetado na rede por uma das portas do gerador de tráfego, cruza a topologia de teste e retorna em um outra porta do gerador que também é usada para injetar tráfego no sentido oposto. A mesma porta atua como transmissor e receptor de dados.

 Controlador OpenFlow: controlador OpenFlow hospedado em máquina virtual que provê as diretrizes de programação do plano de encaminhado residente nos roteadores RI’s (roteador de interconexão), programação está que define a forma de encaminhamento dos dados entre os roteadores RI’s e na rede. O controlador utilizado suporta a versão do OpenFlow 1.0.

6.2 Especificação dos Equipamentos de Teste

Para realizar as simulações deste trabalho, os seguintes equipamentos foram utilizados:

 Roteadores RA1 e RA2:

o CPU Intel Celeron (397.95-MHz 686-class CPU); o Memória RAM 768 Mbytes;

o 3 interfaces de rede 1000 Mbps UTP RJ-45; o Sistema Operacional: JUNOS 10.4R4.5.

 Roteadores RI1 e RI2:

o CPU Freescale e500v2 core revision 3.0; o Memória RAM 2 Gbytes;

o 4 interfaces de rede 10/100/1000 Mbps UTP RJ-45;

o Sistema Operacional: JUNOS 12.3-20130221_dev_sdn_12q3.0 com SDN Software Suite.

 Gerador de Tráfego modelo IXIA IxN2X:

o CPU Intel Xeon CPU X5650 @ 2.67GHz; o Disco Rígido de 500 Gbytes;

o Sistema Operacional: Windows Server 2008 R2 Standard Service Pack 1;

o Software de geração/análise de tráfego: IXIA IxN2X Packets and Protocols [7.30 EA Release];

o 2 interfaces de rede 10/100/1000 Mbps UTP RJ-45.

 Controlador OpenFlow instalado em Máquina Virtual:

o Virtualizador de computador Sun VirtualBox 4.2.14 r86644; o Sistema Operacional Ubuntu 13.04 32bit;

o CPU Intel CORE I7 @ 2.66GHz; o Memória RAM de 4 Gbytes; o Disco Rígido de 10 Gbytes; o Controlador: Bigswitch Floodlight;

o 1 interface de rede 1000 Mbps UTP RJ-45.

6.3 Topologias de Simulação

Para realizar os experimentos, foram utilizadas duas topologias de rede visando caracterizar os ambientes a serem experimentados de forma que o mesmo ambiente pudesse ser utilizado para testar ambos os cenários fornecendo dados válidos para a comparação entre os modelos.

Figura 14 – Tráfego enviado por encaminhamento tradicional IP / BGP

Figura 15 – Tráfego enviado por encaminhamento especializado OpenFlow

Fonte: Elaborado pelo Autor

6.4 Delimitação de escopo

Foi avaliado o uso do OpenFlow para a troca de tráfego prioritário entre Sistemas Autônomos usando os pontos de troca de tráfego (PTT).

Sendo assim, os testes estão delimitados conforme abaixo:

 Não visa testar mecanismos de controle de congestionamento dentro dos experimentos;

 Não visa testar mecanismos de gerenciamento de banda dentro dos experimentos;  A transmissão de dados será realizada entre dois pontos com origem e destino em

 Apenas será gerado tráfego que será classificado como prioritário, que é o propósito desse trabalho.

6.5 Metodologia

A metodologia usada neste trabalho é descrita por HIROTA (2012) que visa definir o ambiente de teste e seleção das variáveis de teste.

Foram definidas as seguintes etapas como critério de avaliação dos experimentos (JAIN, 1991):

1. Determinar os objetivos do trabalho e definir o sistema; 2. Listar os serviços do sistema e possíveis resultados; 3. Selecionar as métricas;

4. Listar os parâmetros do sistema e de carga; 5. Selecionar fatores e seus valores;

6. Selecionar as técnicas de avaliação; 7. Selecionar a carga de trabalho; 8. Definir os experimentos;

9. Analisar e interpretar os resultados.

6.5.1 Determinar os objetivos do trabalho e definir o sistema

Esta etapa consiste em determinar o objetivo e escopo do trabalho. Com um mesmo conjunto de hardware e software, a definição do sistema pode variar dependendo dos objetivos do estudo (JAIN, 1991).

Neste trabalho, o objetivo é avaliar o uso do OpenFlow para troca de tráfego prioritário na estrutura física do PTT selecionando um determinado tipo de tráfego que

será caracterizado pelo Sistema Autônomo origem com diferentes tipos de tamanhos de pacotes, taxas de transmissão e usar o modelo tradicional de transmissão na Internet como referência de avaliação.

6.5.2 Listar os serviços do sistema e possíveis resultados

Para JAIN (1991), o sistema deve possuir uma lista de serviços que provê um determinado número de resultados que podem ser factíveis ou não para os objetivos requeridos. Neste trabalho foi caracterizado o sistema sendo o meio de transmissão de dados prioritários. Como lista de serviços, foram considerados dois, o modelo de transmissão OpenFlow e o modelo de transmissão tradicional.

Conforme BRADNER (1999), dentre os sete tamanhos de pacotes sugeridos para testar um sistema de transmissão, foram selecionados três para avaliar o sistema de transmissão, tanto no modelo utilizando o OpenFlow quanto no sistema de transmissão tradicional. Dentre os tamanhos de pacotes sugeridos, foram usados os pacotes de 64 bytes, 512 bytes e 1518 bytes devido os sistemas de transmissão multimídia utilizarem em muitas vezes pacotes pequenos, e estes, para os dispositivos de rede, complexos de tratarem devido ao processamento local. Segundo POSTEL (1983), o tamanho médio de pacotes na Internet é de 576 bytes para pacotes IP e de 536 bytes para pacotes TCP. Datagramas maiores que 576 bytes só devem ser transmitidos caso a origem tenha certeza que o destino possa receber pacotes maiores que o tamanho referido, portando o segundo tamanho de pacote selecionado foi de 512 bytes por estar próximo ao limiar sugerido. Pacotes de 1518 bytes foram selecionados devido ser o maior comprimento dentro de um sistema de transmissão que possa ser transmitido sem que haja fragmentação e segundo a norma IEEE802.3 é o maior MTU (Maximum Transmission Unit) para o Ethernet V2.

No Quadro 1 são apresentados os testes que foram realizados. É esperado que os testes com o modelo de encaminhamento especializado OpenFlow atinja valores similares ao do modelo de encaminhamento tradicional, para que possa ser utilizado como alternativa na transmissão de tráfego prioritário no PTT.

Quadro 1 – Lista de Serviços

Serviço

Encaminhamento Tradicional

Encaminhamento Especializado OpenFlow Fonte: Elaborado pelo Autor

6.5.3 Selecionar as métricas

Nesta etapa devem ser estabelecidos os parâmetros para comparação dos desempenhos obtidos nos testes entre os modelos de encaminhando tradicional e encaminhamento OpenFlow. Foram selecionadas métricas de desempenho que serão apresentadas no Quadro 2 – .

Os parâmetros selecionados bem como sua descrição foram:

 Pacotes transmitidos por segundo (PPS): quantidade total de pacotes transmitidas no intervalo de um segundo pelo Sistema Autônomo origem. Os valores foram obtidos no gerador de tráfego com base no tamanho do pacote gerado e taxa de ocupação do canal de transmissão.

 Latência: é o tempo que o pacote levou para ser transmitido do Sistema Autônomo origem até o Sistema Autônomo destino em sentido único. A coleta foi feita na interface de saída no gerador de tráfego origem e na interface de entrada do gerador no destino. O gerador de tráfego é composto por duas portas, uma destinada a medições e gerações de tráfego pertinentes ao Sistema Autônomo origem e outra as medições pertinentes ao Sistema Autônomo destino. A média da latência é fornecida pelo gerador e analisador de tráfego e é calculada através da equação:

LM = latência média;

LT = somatória da latência de todos os pacotes recebidos; RP = número de pacotes recebidos.

 Variação da latência: é a variação estatística do atraso da chegada do pacote em relação a transmissão na origem. O cálculo da variação da latência foi calculada pelo módulo de geração de estatística do gerador de tráfego com base na diferença da latência entre pacotes recebidos na interface do gerador de tráfego que representa o Sistema Autônomo destino.

 Perda de pacotes: é a quantidade de pacotes perdidos durante a transmissão de dados nos cenários de testes. É a diferença entre o valor total de pacotes transmitidos pelo gerador de tráfego no Sistema Autônomo origem e o número total de pacotes recebidos pelo gerador de tráfego no Sistema Autônomo destino.

 Uso de CPU: é a porcentagem de uso da CPU (Central Processing Unit) das placas de encaminhamento de dados, também conhecidas como placas de linha. Esta medida foi coletada nos roteadores de interconexão (RI’s), uma vez que estes roteadores são responsáveis pelo encaminhamento do tráfego tanto no modelo tradicional quando no modelo especializado OpenFlow. As medidas foram coletadas nas placas de linha ao invés da placa de processamento central dos roteadores, uma vez que trata-se do processamento de encaminhamento de dados e não de desempenho de roteamento ou de qualquer outra função que dependa dos recursos da placa de processamento central do roteador.

Quadro 2 – Métricas do sistema Métricas Pacotes por segundo Latência Variação da latência Perda de pacotes Uso de CPU % Total de pacotes Média Média Total de pacotes % total Desvio Padrão Desvio Padrão Fonte: Elaborado pelo Autor

6.5.4 Listar os parâmetros do sistema e de carga

Consiste em listar os parâmetros que influenciam o desempenho do sistema. Para manter a compatibilidade e integridade nos dados coletados, os testes foram realizados com os mesmos equipamentos de rede e de geração de tráfego, manipulando apenas os valores desejados.

Os efeitos que podem alterar o comportamento de transmissão de dados prioritários são latência, variação da latência e perda de pacotes conforme descrito no capítulo 2.

6.5.5 Selecionar fatores e seus valores

Nesta etapa serão especificados os parâmetros de teste, seus valores e variações.

Os testes foram realizados fixando a taxa de transmissão nos níveis de 25%, 50%, 75% e 100% e variando o tamanho dos pacotes conforme BRADNER (1999).

As simulações foram realizadas com base em dois cenários de testes, mantendo-se os mesmos parâmetros e variáveis que serão descritos abaixo.

 Encaminhamento Tradicional: para este cenário, os seguintes parâmetros de testes serão utilizados:

o Usar taxa de transmissão de dados de 25%, 50%, 75% e 100% da capacidade de comunicação do canal de 1000Mbps;

o Monitorar o tráfego no mesmo equipamento de geração;

o Enviar pacotes com o campo DSCP marcado com o valor BE, DSCP = 0 ou 000000:

 Variar o tamanho do pacote entre 64, 512 e 1518 bytes;

 Gerar fluxos utilizando o protocolo UDP e TCP em portas e endereços IP destino aleatórios bem como tráfego regular IP;  Gerar tráfego na proporção de 40% de tráfego UDP, 40% de

tráfego TCP e 20% de tráfego regular IP;  Gerar 50 fluxos com transmissão simultânea:

o Para tráfegos IP, variar o endereço IP origem e destino, sendo 10 diferentes endereços IP origem e 10 diferentes endereços IP destino;

o Para tráfegos UDP e TCP, variar o endereço IP e portas origem e destino sendo 20 diferentes endereços IP origem e 20 diferentes endereços IP destino bem como 20 diferentes portas origem e 20 diferentes portas destino para cada.

 Gerar tráfego durante 60 segundos.

 Encaminhamento Especializado OpenFlow: para este cenário, os seguintes parâmetros de testes serão utilizados:

o Usar taxa de transmissão de dados de 25%, 50%, 75% e 100% da capacidade de comunicação do canal de 1000Mbps;

o Monitorar o tráfego no mesmo equipamento de geração;

o Enviar pacotes com o campo DSCP marcado com o valor BE, DSCP = 0 ou 000000:

 Variar o tamanho do pacote entre 64, 512 e 1518 bytes;

 Gerar fluxos utilizando o protocolo UDP e TCP em portas e endereços IP destino aleatórios bem como tráfego regular IP;  Gerar tráfego na proporção de 40% de tráfego UDP, 40% de

 Gerar 50 fluxos com transmissão simultânea:

o Para tráfegos IP, variar o endereço IP origem e destino, sendo 10 diferentes endereços IP origem e 10 diferentes endereços IP destino;

o Para tráfegos UDP e TCP, variar o endereço IP e portas origem e destino sendo 20 diferentes endereços IP origem e 20 diferentes endereços IP destino bem como 20 diferentes portas origem e 20 diferentes portas destino para cada.

 Gerar tráfego durante 60 segundos.

6.5.6 Selecionar as técnicas de avaliação

O método utilizado será o experimental, método o qual se manipula as variáveis de maneira pré-estabelecida, tendo seus efeitos controlados, tenta-se descobrir relações casuais. São procedimentos de planejamentos experimentais, ou delineamento de experimentos (MARTINS, 2002).

Com o uso de um experimento, será implementada uma rede OpenFlow em dispositivos de rede compatíveis com o padrão OpenFlow 1.0 para avaliar o comportamento e funcionamento do OpenFlow para o propósito deste trabalho.

A mesma estrutura será utilizada para os testes e simulação dos fluxos de dados que caracterizará a Internet atual através do PTT, porém sem a implementação do OpenFlow usando o modelo de encaminhamento tradicional.

Quadro 3 – Especificação do laboratório

Fonte: Elaborado pelo Autor

6.5.7 Selecionar a carga de trabalho

Para a realização dos experimentos, foi gerado um tráfego contínuo com base nos dados do Quadro 3 para simular o ambiente desejado.

6.5.8 Definir os experimentos

Na Figura 16 é mostrado o fluxo das etapas dos testes a serem realizados com o objetivo de comprovar o funcionamento o OpenFlow para o propósito deste trabalho.

Figura 16 – Etapas das simulações

Fonte: Elaborado pelo Autor

6.5.8.1 Encaminhamento Tradicional

Para realizar os testes com o uso do encaminhamento tradicional, serão gerados tráfegos com uso do protocolo IP, UDP e TCP simulando os dados existentes na Internet.

Na Internet são trafegados datagramas com informações de endereços IP origem e destino, pacotes de camada 3 e também datagramas com adição de protocolos de camada 4, sendo eles UDP e TCP que trafegam utilizando informações de portas de serviços.

Os tráfegos com informações de camada 3 são geralmente pacotes de PING, ARP, entre outros que não necessitam de informações de portas para endereçá-los.

Já para tráfegos de vídeo e voz, por exemplo, necessitam de informações adicionais para endereçar os pacotes transmitidos em uma porta de serviço identificando o tipo de tráfego para a aplicação.

Neste modelo, será usado o protocolo BGP como protocolo de roteamento entre Sistemas Autônomos e o protocolo OSPF (Open Shortest Path First). Internamente ao Sistema Autônomo, haverá sessões BGP entre os roteadores para transportarem os prefixos recebidos pela sessão BGP externa. Desta forma, o método de encaminhamento e troca de prefixos de roteamento ocorre como na Internet sendo possível simular este ambiente com fidelidade.

Nenhum atributo dos protocolos BGP e OSPF será alterado para estes ensaios. O fluxo de dados gerado no gerador de tráfego serão encaminhados entre os

roteadores que fazem parte da topologia de teste conforme Figura 14 entre o Sistema Autônomo origem ao Sistema Autônomo destino.

Serão gerados 1000 prefixos BGP em cada Sistema Autônomo origem que será simulado pelo gerador de tráfego, sendo o tráfego encaminhando para tais prefixos em direções opostas, porém para próposito deste trabalho, o tráfego será gerado em apenas uma direção e terá origem no Sistema Autônomo conectado ao roteador de acesso 1 em direção ao roteador de acesso 2.

6.5.8.2 Encaminhamento Especializado OpenFlow

Como as redes OpenFlow ou também conhecidas como SDN (Software Defined

Network) são programáveis, foi criado um catálogo de interesse de fluxos na rede que

serão mantidos e atualizados no controlador simulando o mesmo que será feito pelos provedores de serviço que desejarem realizar trocas de tráfego entre si.

Tal catálogo conterá a informação da característica do tráfego a ser enviado para a rede OpenFlow, ao invés de seguir pela rede de dados existente não OpenFlow.

A caracterização do tráfego será feita com base nos modelos disponíveis no OpenFlow, que permite definir um fluxo de tráfego analisando diferentes camadas do modelo ISO/OSI (International Organization for Standardization / Open Systems

Interconnection), caracterizando seu funcionamento como um n-tuple.

Desta forma, será possível filtrar qualquer tipo de tráfego existente na rede sem a necessidade de realizar alterações nas marcações de DSCP / ToS dos pacotes.

Para este trabalho, os campos considerados para compor a n tuple de seleção de fluxos são apresentados na Tabela 2.

Tabela 2 – Tabela n tuple de seleção de tráfego

Campo Uso

IPv4 SRC Opcional

IPv4 DST Mandatório

Transport SRC Port Opcional Transport DST Port Opcional IPv4 ToS Bits Opcional

Fonte: Elaborado pelo Autor

A seleção de fluxos será programada no controlador OpenFlow que programará em todos os roteadores de interconexão a decisão de encaminhamento do pacote.

Como premissas de implementação serão considerados:

 Uso de rede dedicada para o tráfego OpenFlow;

 Somente dados prioritários e/ou críticos serão encaminhados;

 A troca de tráfego será bilateral entre dois Sistemas Autônomos utilizando a rede OpenFlow, semelhante ao sistema de troca de tráfego existente atualmente no modelo PTT;

 A troca de tráfego será realizada com o interesse de tráfego entre os dois Sistemas Autônomos;

 A troca de tráfego será realizada com o interesse de tráfego entre outros Sistemas Autônomos conectados diretamente a estes de forma usá-los como rede trânsito;  Todo o tráfego que não for prioritário deverá ser encaminhado utilizando a rede

existente não OpenFlow.

A estrutura mostrada na Figura 17 foi criada para gerenciar os catálogos de interesse de fluxo, mantendo a isolação administrativa de cada um, uma vez que o

uso da rede OpenFlow é feito por diferentes usuários, de diferentes Sistemas Autônomos, cada um com seu direito administrativo.

Para que haja segmentação administrativa, deve ser usada uma aplicação chamada FlowVisor, a qual permite integração com o controlador Floodlight e com diversos outros controladores, fazendo com que seja possível o segmentação lógica do controlador, permitindo com que cada Sistema Autônomo administre seus fluxos de dados prioritários.

Está fora do escopo desse trabalho, detalhar o fluxo de funcionamento administrativo da segmentação do controlador.

Figura 17 – Modelo de implementação do controlador OpenFlow

Fonte: Elaborado pelo Autor

6.5.9 Analisar e interpretar os resultados

Para coletar e organizar os dados e para que possam ser analisados e avaliados, foi proposto o modelo de coleta de informações contidos no Quadro 4.

Os valores representam as médias de cada coleta durante o intervalo de 60 segundos para cada um dos objetos de medição presentes na tabela do Quadro 4.

Quadro 4 – Modelo de coleta de dados

Fonte: Elaborado pelo Autor

Para determinar a quantidade de amostras necessárias foi utilizada a fórmula descrita por JAIN (1991). Quanto maior a amostra, maior será a confiança na avaliação, porém grandes amostras requerem mais esforços e recursos. Portanto, é desejado encontrar o menor tamanho de amostras para a obtenção da precisão para a amostragem dos dados. Neste trabalho foi utilizado o método de determinação média, pois este visa estimar o desempenho médio de um sistema. A fórmula utilizada está descrita a equação 2.

=

(2)

n = quantidade de amostras;

z = 1.96 – valor para uma confiabilidade de 95%; s = desvio padrão dos resultados;

r = margem de erro, foi considerado 5%; = valor médio das amostras referenciais.

Segundo JAIN (1991) e HIRATA (2012), para determinar a quantidade de coletas, é necessário realizar medições preliminares para estimar o desvio padrão. Para estimar o desvio padrão, foram coletadas 10 amostras utilizando como referência o modelo de encaminhamento tradicional com taxa de ocupação de canal de 50% e pacotes de 64 bytes. 64 bytes 512 bytes 1518 bytes 64 bytes 512 bytes 1518 bytes 64 bytes 512 bytes 1518 bytes 64 bytes 512 bytes 1518 bytes 1 2 3 4 n Média Desv. Padrão

Variação da Latência Média

(µs) Perda de Pacotes CPU % Tip o d e E n ca min h a me n to Taxa de utilização do canal em % / Mbps Tipos de fluxos Modelo Ocupação

do Canal Fluxos Amostra

Média de Pacotes por Segundo

Realizando o cálculo de acordo com a equação 2 os valores das coletas e

Documentos relacionados