Mudanças entre as edições de "Balanceamento de tráfego em LANS ethernet usando uma abordagem SDN/Openflow"

De MediaWiki do Campus São José
Ir para navegação Ir para pesquisar
 
(2 revisões intermediárias por um outro usuário não estão sendo mostradas)
Linha 1: Linha 1:
= Resumo Estendido =
+
''' Autor:''' Kalvim Scotti
  
== Introdução ==
+
'''Resumo:'''
 +
Neste documento será apresentado como as redes locais são compostas, assim como os problemas que ocorrem quando se conecta equipamentos de rede como pontes formando caminhos fechados. Descreve como os protocolos Spanning Tree funcionam para resolver este problema e introduz a ideia de protocolos desenvolvidos sobre a abordagem de Rede Definida por Programa para realizar balanceamento de tráfego de uma forma mais eficaz que os protocolos atuais, resolvendo também o problema com caminhos fechados. Será proposto o desenvolvimento de um controlador Openflow para realizar o balanceamento de tráfego com a plataforma Ryu, assim como será apresentado o modelo do controlador desenvolvido e os resultados obtidos.
  
A necessidade de fazer com que dados  fossem compartilhados remotamente, fez com que computadores fossem interconectados, criando assim as redes de computadores. As redes locais são redes privadas formadas por computadores interconectados por meio de um barramento (Ethernet) ou conectados entre eles formando um anel (Token Ring). Portanto, a tecnologia predominante nas redes locais é a Ethernet, na qual assume uma topologia em forma de barramento. Nesse modelo, o sinal de transmissão é jogado no barramento, que é um meio físico como um fio de cobre formando um único domínio de colisão, dessa forma ficando disponível para todos os computadores. No entanto, apenas o computador que possui o adaptador de rede com o endereço físico contido no cabeçalho do quadro (PDU de enlace) irá extrair o datagrama e entregar à camada de rede. Porém, essa estrutura se torna saturada com o aumento de hosts e um tráfego de rede muito alto, tornando assim, o acesso ao meio de comunicação muito disputado, gerando muitas colisões. Portanto, com a evolução das redes e a necessidade de topologias mais flexíveis e escaláveis, foram desenvolvidos equipamentos como bridges e switches. Estes equipamentos comutadores eliminam o domínio único de colisão isolando suas portas, formando assim, um domínio de colisão para cada interface. Para isso, o quadro recebido será processado pelo equipamento e encaminhado à porta na qual o host de destino se encontra, conforme sua tabela de comutação que é formada de forma automática e dinâmica. Então, se um endereço de destino não consta na tabela de comutação, o Switch repassa o quadro em todas as suas interfaces, dessa forma, para cada quadro recebido será armazenado na tabela de comutação a porta em que o endereço físico do remetente se encontra.
 
  
Então com a evolução das redes locais os equipamentos comutadores se tornaram muito importantes para desempenho da rede, pois eles são o centro da rede local. Portanto em redes de médio a grande porte, se faz necessário a utilização de muitos equipamentos que atuam na camada de enlace. Nestes casos pretendem-se organizar estes equipamentos em diferentes topologias, afim de ter caminhos reduntantes para evitar falhas, expandir a rede, ter alta disponibilidade, realizar isolamentos na rede e fazendo tudo isso sempre com auto desempenho. Porém ao formar caminhos redundantes irá formar loops entre Switches, que são indesejados pois geram problemas como congestionamento e o travamento da rede. Estes problemas ocorrem porque os switches criam um único domínio broadcast para interligar as redes. Então encaminhamentos em broadcast irão percorrer os loops infinitamente.
+
'''Abstract:'''
  
Para evitar o problema de caminhos redundantes entre Switches, utiliza-se protocolos do tipo Spanning Tree (STP), que atuam controlando os switches determinando a porta a ser desabilitada e assim evitar loops. Para isso o protocolo STP envia BPDUs (Bridge PDUs) entre os switches, que de acordo com o Bridge ID escolhe quem será o Root, determina uma topologia de acordo com o ID dos demais e o custo dos enlaces, de modo que não formem nenhum loop entre eles. Apesar da utilização destes protocolos resolver o problema de quadros circulando indefinidamente pelos switches, para resolver o problema acabam diminuindo a otimização dos recursos físicos.
+
This document presents how local networks are composed and the problems that occur when network devices are connected as bridges, resulting in closed paths. It describes how the Spanning Tree protocols deal to solve this problem and introduces the idea of  protocols developed under the Network Defined by Program approach to perform traffic balancing in a more effective way than the usual protocols, also solving the closed paths issue. It propposes to develop a controller Openflow to perform the traffic balancing throught the Ryu platform, presenting the developed controller model and the obtained results. Describes how the Spanning Tree protocols working to resolv this problem and introduce the idea of protocols developed over Software Defined Networking to making traffic balance with a way more effective that the standards protocols resolving too the problems witch the closed ways. Did proposed the development of the Openflow controller to make the traffic balance with the Ryu framework, and did presents the controller model developed and achieved results.  
  
Uma abordagem interessante para tratar estes tipos cenários é o SDN (Software-Defined Networking). Com SDN é possível criar um controlador para equipamentos de rede e programar todo o seu funcionamento, para isso, se abstrai a camada de hardware e faz o controle da rede de forma centralizada na camada lógica de controle do SDN. A camada de controle fala diretamente com as camadas de aplicação e de hardware. Por esse motivo, pode-se criar ambientes de rede de forma customizada, atendendo especificamente a necessidade do administrador de rede. Tendo essa possibilidade de se programar o funcionamento da rede na camada de controle, pode-se criar regras de encaminhamento para que o fluxo de dados assuma algum determinado caminho, afim de realizar balanceamento de tráfego e evitar o problema de loops em caminhos redundantes.
 
  
O protocolo mais utilizado para implementar SDN é o Openflow. Ele foi o primeiro padrão de interface de comunicação entre as camadas de controle e de hardware. Openflow usa padrões nos fluxos de pacotes para identificar o tráfego de rede de acordo com regras pré definidas estaticamente ou dinamicamente programadas pelo software de controle do SDN. Então ele permite que o administrador defina como os determinados fluxos de pacotes devem ser encaminhados pelos equipamentos de rede. Dessa maneira, pode-se realizar balanceamento de tráfego e tratar o problema com enlaces redundantes de uma só vez. Para isso, precisa-se identificar os determinados fluxos de pacotes e assumir diferentes caminhos pelos Switches, de forma a utilizar todos os recursos disponíveis e evitar encaminhamentos cíclicos.
+
'''Palavra Chave:'''
 +
LAN; Enlace; TCP/IP; Camada de enlace; Ethernet; Spanning-Tree; SDN; Openflow; Ryu; Mininet; Python; Balanceamento de tráfego; Endereço MAC; Topologias; Switch.
  
== Motivação ==
 
  
Atualmente, com o crescimento das redes locais, necessita-se de um controle da rede muito mais eficaz e seguro. Portanto, nos cenários de médio a grande porte, a realização de balanceamento de tráfego é imprescindível. Dessa forma, tirando os gargalos da rede e aproveitando os recursos físicos, com certeza resulta em um impacto muito positivo para o desempenho da rede e consequentemente na produtividade da instituição.
+
== Arquivos ==
  
De fato, o que nos impulsiona a tratar estas questões é ter acesso a um protocolo que nos possibilita programar o funcionamento dos Switches. Sendo que, sem essa possibilidade estamos limitados aos mecanismos disponibilizados pelos fabricantes dos equipamentos, não havendo muito poder de controle e customização. Sendo assim, Openflow/SDN possibilita desenvolver uma implementação de controle de rede afim de fazer o devido balanceamento de tráfego e otimização de recursos físicos.
+
'''Monografia:''' [[Media:TCC_KalvimScotti.pdf|Monografia.pdf]]
 
 
== Objetivo ==
 
 
 
O objetivo deste trabalho é desenvolver um controlador Openflow capaz de programar os Switches de uma rede local de forma a balancear o tráfego entre seus caminhos redundantes.
 
 
 
== Cronograma ==
 
{| class="wikitable" style="text-align: center"
 
!rowspan="2"|Etapas
 
!colspan="5"|Mês
 
|-
 
!Maio/2013
 
!Junho/2013
 
!Julho/2013
 
!Agosto/2013
 
!Setembro/2013
 
|-
 
|align="left"|Revisão Bibliográfica || x || x || x ||  ||
 
|-
 
|align="left"|Escrita do Documento || || x || x || x ||
 
|}
 
 
 
== Bibliografia ==
 
 
 
* [http://www.openflow.org/documents/openflow-wp-latest.pdf Texto técnico sobre Openflow]
 
* [http://www.openflow.org/ Site do Openflow]
 
* [http://www.openflow.org/videos/ Videos de projetos demonstrativos de Openflow]
 
* [http://openvswitch.org/ Openvswitch - um switch virtual que inclui suporte a Openflow]
 

Edição atual tal como às 09h05min de 16 de setembro de 2014

Autor: Kalvim Scotti

Resumo: Neste documento será apresentado como as redes locais são compostas, assim como os problemas que ocorrem quando se conecta equipamentos de rede como pontes formando caminhos fechados. Descreve como os protocolos Spanning Tree funcionam para resolver este problema e introduz a ideia de protocolos desenvolvidos sobre a abordagem de Rede Definida por Programa para realizar balanceamento de tráfego de uma forma mais eficaz que os protocolos atuais, resolvendo também o problema com caminhos fechados. Será proposto o desenvolvimento de um controlador Openflow para realizar o balanceamento de tráfego com a plataforma Ryu, assim como será apresentado o modelo do controlador desenvolvido e os resultados obtidos.


Abstract:

This document presents how local networks are composed and the problems that occur when network devices are connected as bridges, resulting in closed paths. It describes how the Spanning Tree protocols deal to solve this problem and introduces the idea of protocols developed under the Network Defined by Program approach to perform traffic balancing in a more effective way than the usual protocols, also solving the closed paths issue. It propposes to develop a controller Openflow to perform the traffic balancing throught the Ryu platform, presenting the developed controller model and the obtained results. Describes how the Spanning Tree protocols working to resolv this problem and introduce the idea of protocols developed over Software Defined Networking to making traffic balance with a way more effective that the standards protocols resolving too the problems witch the closed ways. Did proposed the development of the Openflow controller to make the traffic balance with the Ryu framework, and did presents the controller model developed and achieved results.


Palavra Chave: LAN; Enlace; TCP/IP; Camada de enlace; Ethernet; Spanning-Tree; SDN; Openflow; Ryu; Mininet; Python; Balanceamento de tráfego; Endereço MAC; Topologias; Switch.


Arquivos

Monografia: Monografia.pdf