Rodrigo de Souza Couto
Redes de Computadores II

Sucesso das Redes de Computadores
◦ Infraestrutura crítica das instituições
◦ Utilização em massa da Internet

Experimentos de novas propostas
◦ Necessidade de ambientes de redes reais
◦ Boa parte das propostas são apenas simuladas

Dificuldade de experimentos
◦ Necessidade de um grande número de nós
◦ Muitos necessitam de modificações nos nós da rede
◦ Experimentos não devem influenciar tráfego de produção

Redes Virtualizadas Programáveis
◦ GENI (Global Environment for Network Innovations)
◦ Experimentação de protocolos em larga escala
 Criação de redes próximas da realidade
◦ Implementação custosa e demorada

OpenFlow
◦ Experimentação em redes reais
 Separação do tráfego experimental do tráfego de produção
◦ Menor Escala
 Redes locais de universidades

Mecanismo de separação do tráfego
◦ Utilizado nos comutadores da rede
◦ Experimentos não influenciam no tráfego de produção
◦ Possibilidade de reprogramar os comutadores
 Adequação da rede para os experimentos
 Excução de novos protocolos

Requisitos
◦ Baixo custo e alto desempenho
 Desejável para a aceitação dos administradores da rede
◦ Suporte a uma ampla gama de experimentos
◦ Isolamento entre tráfego experimental e de produção
◦ Fabricantes não necessitam expor seus projetos

Funções de manipulação de tabelas de fluxo
◦ Presente na maioria dos comutadores comerciais


Protocolo aberto de configuração das tabelas
Cada fluxo é tratado de forma diferente

Tabela de Fluxos
◦ Uma ação para cada fluxo

Canal Seguro
◦ Conexão entre Comutador e
Controlador

Protocolo OpenFlow
◦ Configuração remota das
Tabelas de Fluxos


Verificação do cabeçalho dos pacotes
Comutadores “tipo0”
◦ Primeira geração de comutadores

Outras gerações
◦ Campos do cabeçalho escolhidos arbitrariamente
◦ Maior flexibilidade
 Novas formas de endereçamento

Encaminhar os pacotes do fluxo para uma
(ou várias) porta(s) específicas
◦ Comutação de pacotes

Encapsular os pacotes e encaminhá-los para o
Controlador
◦ Inicialização dos Fluxos

Descartar os pacotes
◦ Aplicações de Segurança

Comutador OpenFlow dedicado
◦ Apenas executa as ações da Tabela de Fluxos
◦ Não suporta encaminhamento Nível 2 e 3

Comutador com OpenFlow habilitado
◦ Equipamentos que realizam encaminhamento Nível 2 e 3
◦ Adição do OpenFlow como funcionalidade
◦ Tráfego de produção encaminhado normalmente
 Adição de uma nova ação: encaminhar os pacotes para o
pipeline normal do comutador
 Separação do tráfego por VLANs

Sistema Operacional de Rede
◦ Facilidade de gerenciamento da rede
◦ Gerenciamento por interface de alto nível
 Nomes ao invés de MAC e IP
◦ Plataforma para aplicações de gerenciamento
◦ Baseado em redes OpenFlow

Analogia com Sistema Operacional de
Computadores
◦ Interface de alto nível para programação
 Genérica para diversas arquiteturas
◦ Facilita o desenvolvimento e a portabilidade de aplicações

Controlador
◦ NOX
◦ Aplicações

Visão da Rede
◦ Localizaçao dos nós
◦ Serviços
Envio de Pacotes por
um Cliente – Fluxo
Desconhecido
A
B
C
Encapsulamento e
envio para o
Controlador
A
B
C
Controlador
configura a Tabela
de Fluxos do
Comutador A
A
B
C
Todos os pacotes do
fluxo que chegam
em A irão para B
A
B
C
Após definido o fluxo,
o pacote irá para B
A
B
C
Pacote encapsulado
para o Controlador
A
B
C
Controlador configura
comutador B com o
fluxo
A
B
C
Fluxo configurado no
Comutador B
A
B
C
Após procedimento
semelhante, C é
configurado
A
B
C
Pacotes do Fluxo são
encaminhados sem a
utilização do
Controlador

Virtualização de rede OpenFlow
◦ Divisão da rede OpenFlow em fatias
◦ Cada fatia possui seu Controlador

Recursos Divididos
◦
◦
◦
◦
Banda Passante
Tráfego
CPU dos elementos da rede
Tabela de encaminhamento dos comutadores

Proxy entre os Controladores e Comutadores
◦ Interceptação de mensagens
◦ Transparência aos elementos da rede
◦ Decisão a partir de políticas

OpenFlow
◦ Possibilita a experimentação em redes reais
◦ Melhora a validação de propostas
 Muitas utilizam apenas simulação

Outras funcionalidades para o OpenFlow
◦ NOX
 Sistema Operacional de redes
 Gerenciamento centralizado
 Parâmetros de alto nível
◦ FlowVisor
 Virtualização de redes OpenFlow
 Divisão dos recursos da rede

1)Por que é difícil realizar experimentos de novas
propostas em redes de produção, como as
existentes em empresas e universidades?


1)Por que é difícil realizar experimentos de novas
propostas em redes de produção, como as
existentes em empresas e universidades?
Muitos experimentos de novas propostas requerem
a modificação de todos os equipamentos de uma
rede. Assim, como as redes fazem parte da
infraestrutura crítica de diversas instituições essas
modificações podem ser inviáveis pois poderiam
atrapalhar o tráfego de produção.

2)Qual o principal objetivo da proposta do
OpenFlow?


2)Qual o principal objetivo da proposta do
OpenFlow?
Possibilitar o uso de redes reais para a realização
de experimentos de forma que o tráfego
experimental não interfira no tráfego de produção.


3)Diga quais são os principais componentes de um
Comutador OpenFlow, explicitando a função de
cada um.
Tabela de Fluxos:Possui a definição de cada fluxo
que passa pelo comutador, bem como as ações que
devem ser tomadas para cada um.
Canal Seguro: Conecta o Comutador ao
Controlador da rede.
Protocolo OpenFlow: Possibilita a configuração do
Comutador pelo Controlador.

4)Qual a principal função do NOX?


4)Qual a principal função do NOX?
Fornecer uma interface de alto nível para o
desenvolvimento de aplicações de gerenciamento
de rede.

5)Qual a principal função do FlowVisor?


5)Qual a principal função do FlowVisor?
Dividir a rede OpenFlow em fatias de forma que
sejam isoladas entre si. Assim, cada fatia poderá
possuir seus controladores, e esses não irão
interferir nos controladores de outras fatias.
Download

openflowApresentacao