Alex Vaz Mendes (discussão | contribs)
Alex Vaz Mendes (discussão | contribs)
Linha 26: Linha 26:


== Usando OpenFlow ==
== Usando OpenFlow ==
* O OpenFlow pode ser usado para uma série de exemplos, como:
** Controle e Gerenciamento de rede: o próprio controlador da rede pode ter uma implementação específica de direcionamento de fluxos proveniente de certos usuários, e a própria política pode ser implementada diretamente no controladror.
** VLANs: Para criar uma VLAN, ou similar, com o OpenFlow é simples, basta definir um conjunto de fluxos para definir um ID de VLAN, vinculado ao MAC dos hosts. Outra possibilidade é o controlador definir os fluxos de acordo com a autenticação dos Usuários.
** Redes sem IP: Outros campos (cabeçalho) e propostas de protocolos são implementáveis na arquitetura do OpenFlow, ou até combinações de cabeçalhos de protocolos layer 2 (como o Ethernet) podem ser usados para endereçamento.
** Conexões VOIP com mobilidade: Um controlador na rede OpenFlow, de acordo com a autenticação dos usuários na rede, pode realizar um handoff remapeando os fluxos (Flow Tables), permitindo uma mobilidade ao longo dos pontos de acesso da rede (WiFi por exemplo).

Edição das 20h43min de 14 de julho de 2014

Referência

  • N. McKeown, T. Anderson, H. Balakrishnan, G. Parulkar, L. Peterson, J. Rexford, S.J. Turner, OpenFlow: enabling innovation in campus networks, ACM SIGCOMM Comput. Commun. Rev. (2008)

Resumo

Introdução

  • A estrutura das redes de computadores são uma parte crítica diante de todo o desenvolvimento de negócios e evolução tecnológica. E o sucesso desta depende de continuadas pesquisas, e a estrutura existente hoje está limitada para extensões, ou seja, está "ossificada".
  • O problema depois de reconhecido criou a necessidade de um trabalho aprofundado neste ponto, e assim a comunidade científica começou a se mover em atitudes como a criação do GENI, um grupo de pesquisas para experimentar novas arquiteturas de Internet.
  • Assim novas ideias e discussões surgiram no meio da pesquisa sobre como desenvolver este processo, e conceitos como "slices", virtualização, clean slate, entre outros surgem com representatividade.
  • Diante deste cenário, surgem ideias de plataformas e switches programáveis, que desenvolvam novas estratégias e protocolos, e que exigiam uma nova ideia de abordagem não suportada antes.
  • Esta nova proposta precisa incorporar:
    • Alta performance e baixo custo de implementação.
    • Capacidade de suportar um alto "range" de pesquisas.
    • Isolamento entre tráfico experimental e de produção.

Switch OpenFlow

  • A ideia é aproveitar que a maioria dos switches Ethernet possuem tabelas de fluxo ou encaminhamento (Flow Tables), capazes de coletar estatísticas e implementar QoS, NAT, entre outros.
  • O OpenFlow explora um conjunto de funções comuns, devido a diferença entre os fabricantes, e assim provê um protocolo aberto para programar a "flow-table" destes switches, o que já possibilita ao administrador da rede, dividir o fluxo de pesquisa e produção.
  • O switch OpenFlow trabalha com a associação de fluxos na tabela através de entradas comuns, as quais não são fixas ou apenas limitadas a um campo de um cabeçalho, mas extensíveis e adaptáveis conforme a necessidade, o que requer um mínimo de funções para implementação.
  • Este switch consiste de três partes:
    • Flow Table: a associação de uma entrada (flow entry) com uma ação de acordo com esta.
    • Um canal seguro de comunicação que permita um controlador interagir com o mesmo, para a adaptação dos fluxos à necessidade, através de comandos e informações passadas entre ambos.
    • O protocolo OpenFlow que provê um meio padrão de comunicação entre controlador e switch.
  • Em suma um switch OpenFlow dedicado, é um elemento de rede que repassa pacotes entre portas de acordo com processos e regras definidos por um controlador.
  • Cada entrada na tabela de fluxos pode ser vista e usada para esta associação dos pacotes que passam pela rede com um tipo de encaminhamento, através do controlador estas podem ser "negociadas" e assim podem ser criados novos fluxos ou deletados alguns através desta comunicação em canal seguro.
  • Novamente, os controladores são fundamentais neste processo, porque ele determina as regras de encaminhamento na rede, e possui graças ao canal de comunicação, uma visão (virtualizada) da rede, para que esta possa ser aproveitada da melhor maneira. Este pode apresentar processos dinâmicos e adaptativos, de modo que as melhores condições possam ser identificadas e implementadas automaticamente.

Usando OpenFlow

  • O OpenFlow pode ser usado para uma série de exemplos, como:
    • Controle e Gerenciamento de rede: o próprio controlador da rede pode ter uma implementação específica de direcionamento de fluxos proveniente de certos usuários, e a própria política pode ser implementada diretamente no controladror.
    • VLANs: Para criar uma VLAN, ou similar, com o OpenFlow é simples, basta definir um conjunto de fluxos para definir um ID de VLAN, vinculado ao MAC dos hosts. Outra possibilidade é o controlador definir os fluxos de acordo com a autenticação dos Usuários.
    • Redes sem IP: Outros campos (cabeçalho) e propostas de protocolos são implementáveis na arquitetura do OpenFlow, ou até combinações de cabeçalhos de protocolos layer 2 (como o Ethernet) podem ser usados para endereçamento.
    • Conexões VOIP com mobilidade: Um controlador na rede OpenFlow, de acordo com a autenticação dos usuários na rede, pode realizar um handoff remapeando os fluxos (Flow Tables), permitindo uma mobilidade ao longo dos pontos de acesso da rede (WiFi por exemplo).