programa de engenharia elétrica - pee/coppe/ufrj universidade federal do rio de janeiro ferramentas...
TRANSCRIPT
Programa de Engenharia Elétrica - PEE/COPPE/UFRJ
Universidade Federal do Rio de Janeiro
Ferramentas para Gerência de Redes Virtuais Xen, OpenFlow e Híbrida
UFRJ – Universidade Federal do Rio de JaneiroDiogo Menezes Ferrazani Mattos
Prof. Otto Carlos Muniz Bandeira Duarte
UERJ – Universidade do Estado do Rio de JaneiroProf. Marcelo Gonçalves Rubinstein
Projeto ReVirMarço 2012
Introdução
• Cenário atual– Redes baseadas somente em IP– Endereços determinados por DNS, DHCP etc.– Sem suporte explícito a middle boxes
• Experimentação em redes– Restrita a redes locais
• Pequena escala + ambiente controlado– Simulação
• Cenários idealizados– Redes de testes internacionais
• Alto custo de implantação/operação de infraestrutura
Pouco suporte à inovação!
Virtrualização de Redes
• Redes em Paralelo– Uma rede por serviço
• Infraestrutura de rede compartilhada entre redes virtuais• Proposta para a Internet do Futuro
– Virtualização de Redes• Divisão lógica das redes• Isolamento entre as redes
Rede Física
Rede de Produção
Rede Experimental
Rede com QoS
Experimentação na Internet do Futuro
• Redes mais complexas do que no cenário atual– Distribuir os recursos físicos entre as redes virtuais– Controlar e gerenciar os recursos de cada uma das
múltiplas redes virtuais– Maior número de variáveis de rede a serem
monitoradas– Maior a possibilidade de uma decisão afetar o
desempenho de outras redes– Novas funcionalidades que agregam mais
possibilidades ao gerenciamento• Instanciar, migrar e desligar um roteador virtual
Como podemos experimentar arquiteturas para a Internet do Futuro?
Programa de Engenharia Elétrica - PEE/COPPE/UFRJ
Universidade Federal do Rio de Janeiro
Uma Rede de Testes Interuniversitária com Técnicas de
Virtualização HíbridasProjeto ReVir
http://www.gta.ufrj.br/virtualtestbed
Rede de Teste Híbrida
• Rede de Testes Interuniversitária– Experimentação de larga escala
• Experimentos não ficam restritos a redes locais ou ambientes controlados
– Baixo custo de implantação / operação• Computadores pessoais conectados pela Internet
– Condições realísticas de experimentação• Conexão entre os nós através da Internet• Tráfego de teste sujeito às condições de
encaminhamento da Internet
– Suporte a duas tecnologias de virtualização de redes• Xen• OpenFlow
Universidades Participantes
• Já conectadas– UFRJ– UFF– Unicamp– UFRGS– UECE– UFSC– UFES
• A conectar– Universidade de Lisboa Portugal– LIP6 França
Xen
• Usado para criar roteadores virtuais– Uma rede virtual é composta de roteadores virtuais– Cada roteador físico é dividido em diferentes
roteadores virtuais• Um para cada rede virtual da qual pertence
• Aumenta a programabilidade da rede– Roteador convencional
• Um plano de controle e um plano de dados– Roteador com Xen
• Cada roteador virtual implementa seus próprios planos de controle e de dados
Xen
• Novas tecnologias de virtualização de redes– Rede de teste
• Ilhas disponíveis na rede
– Virtualização de E/S assistida por hardware• Máquinas virtuais acessam diretamente instancias
virtuais de dispositivos físicos−SR-IOV um dispositivo físico apresenta-se como
diversos dispositivos virtuais
OpenFlow
• Tecnologia de programação de redes– Desenvolvimento de inovações nas redes
universitárias• Redes de teste em paralelo com redes de produção• Controle da tabela de fluxos em comutadores e
roteadores comerciais
– Flexibilidade no núcleo da rede• Núcleo da rede programável
– Centralizado• Controlador
−Programação da rede + protocolo OpenFlow
OpenFlow
• OpenFlow em Hardware– Computadores com placas NetFPGA
• Ilhas de teste• OpenFlow instalado nas placas NetFPGA
– Suporte a ilhas de comutadores OpenFlow• Comutadores OpenFlow conectados à Rede de Testes
RequisitoConexão entre Universidades
• Necessidade de criação de uma rede Ethernet comum entre as Universidades– OpenFlow Rede comutada
• Necessidade de se definir uma camada Ethernet comum
• Universidades protegidas por Firewalls e NATs– Políticas de segurança de rede diferentes entre
Universidades• Dificuldade em abrir portas no Firewall• Máquinas de testes protegidas por NATs
−IP não alcançável pela Internet
Solução Conectar uma rede Ethernet através de
uma conexão TCP/IP
RequisitoConexão entre Universidades
• Soluções– Criação de duas VPNs Dados e Controle
• Isolamento e políticas distintas para cada rede• Limitação
−Não passa o tráfego de dados da rede OpenFlow• Pacotes como o LLDP não são encaminhados pela VPN
– Criação de túneis Capsulator• Ferramenta criada por Stanford OpenRoads
−Interconexão de redes OpenFlow sobre IP• Novo Protocolo de Transporte
• Criação dos enlaces virtuais
Topologia
GTA/UFRJ
Encapsulamento
Arquitetura de um Nó
Interconexão das Universidades
Controle das plataformas
de Virtualização
Plataformas de
Virtualização
Encaminhamento de Pacotes
Gerenciamento: OpenFlow
• OMNI: OpenFlow MaNagement Infrastructure – Objetivos
• Gerenciar redes OpenFlow • Simplificar a interação administrador-controlador• Prover uma interface de gerenciamento de rede remota
– Principais recursos• Estatísticas da rede em tempo real• Gerenciamento dinâmico de fluxos• Visualização da topologia e da árvore de cobertura• Interface de gerenciamento remota• API para programação do controlador
Arquitetura da OMNI
NOX
InternetHTTP
Interface de Administração
HTTP
Comutadores OpenFlow
Controlador
Aplicações da OMNI
• Desenvolvidas como aplicações do controlador NOX• Aplicações
– Migração de fluxos– Gerenciamento de fluxos– Estatísticas– Servidor Web– Descoberta de topologia– Cálculo da árvore de cobertura
Desenvolvidas
Extensões do NOX
Adaptadas para interagir com o servidor Web
Servidor Web
• Proxy entre entidades de controle remotas e o controlador da rede OpenFlow– Interface para controle remoto da rede OpenFlow– Interface para interação com aplicações
desenvolvidas• Uso de XML
• Funcionamento– Recepção de requisições de primitivas de controle– Chamada da função correspondente– Envio da resposta gerada pela função
Arquitetura da OMNI
NOX
InternetHTTP
Interface de Administração
HTTP
Comutadores OpenFlow
Controlador
Apresentação da Interface
Gerenciamento: Xen
• VNEXT (Virtual NEtwork management for Xen-based Testbeds) – Ferramenta de controle e gerenciamento de redes
virtuais– Auxiliar a tomada de decisões dos administradores
de rede– Baseada na plataforma Xen
• Específica para gerenciar e controlar roteadores e redes virtuais – Diferente das existentes Datacenters
Funcionalidades do VNEXT
• Criação de roteadores • Criação de redes virtuais e controle individual de
cada rede• Monitoramento do estado dos roteadores e enlaces• Reorganização da topologia virtual
– Migração sem perdas
Arquitetura do VNEXT
Arquitetura do VNEXT
• Adqurir, formatar e processar dados monitorados• Memória, banda, # de processadores e % de processamento• Medidas ativas e passivas
• Executar requisições do controlador: atuação• Ex.: migrar ou desligar roteadores virtuais
Arquitetura do VNEXT
• Recebe comandos dos administradores• Envia requisições para os daemons• Manter o estado dos roteadores físicos e virtuais controlados
Arquitetura do VNEXT
• Visualização e controle das redes físicas e virtuais pelos administradores
Arquitetura do VNEXT
• Daemons de monitoramento e atuação– Hierarquia de comunicação reduzir o envio de
requisições• Controlador daemons dos roteadores físicos
daemons dos roteadores virtuais– Escritos na linguagem Python
Arquitetura do VNEXT
• Controlador das redes virtuais– Implementado em Java na forma de Web Service
• Axis2 e Apache Tomcat6– Comunicação entre o controlador e os daemons usa
TCP– Mensagens trocadas são no formato XML– Exporta uma interface de serviços de controle
• Protocolo SOAP para encapsular as mensagens XML
Arquitetura do VNEXT
• Interface gráfica– Implementada em Python com as bibliotecas Qt e
OpenGL– Comunicação com o controlador usando um
empacotador• Transforma os serviços SOAP para métodos em Python
1. Visualização da topologiaVisualizar, girar e desenhar novas redes
2. Painel de propriedadesMostrar as informações do roteadores e enlaces
3. Lista de nós registradosMostrar os roteadores físicos e virtuais atuaisDesligar/ligar roteadores
4. Painel de opçõesExecutar a migração de roteadores virtuaisConfigurar um novo roteador virtual
5. Lista de redesMostrar/ocultar redes da janela de visualizção de topologiaMudar a cor de visualização da rede
Integração Xen e OpenFlow
• Rede de Teste Híbrida– Para todo nó
• Comutador OpenFlow• Criação de máquinas virtuais Xen
– Máquinas virtuais Xen• Interconectadas por comutador OpenFlow
−Marcação de pacotes por Rede Virtual VLAN−Pacotes só são entregues às interfaces com o
identificador de VLAN que está no pacote
Conclusão
• Interconexão de universidades geograficamente distribuídas– VPN (conectividade) + Capsulator (enlace virtual)
• Fase de implantação– 7 universidades participantes
• Criação de Redes Virtuais Híbridas– OpenFlow e Xen– Primitivas
• Instanciar, migrar e remover redes virtuais
• Administração da rede interface Web + Gráfica• Ilhas de Novas Tecnologias
– Virtualização de dispositivos de E/S assistida por hardware– NetFPGA
Trabalhos Futuros
• Experimentação de novas arquiteturas de rede– Content Centric Network
• Integração da rede de teste com outras propostas– Oferta de qualidade de Serviço
• XTC• VIPER
– Roteamento Flexível• XenFlow
Programa de Engenharia Elétrica - PEE/COPPE/UFRJ
Universidade Federal do Rio de Janeiro
Ferramentas para Gerência de Redes Virtuais Xen, OpenFlow e Híbrida
UFRJ – Universidade Federal do Rio de JaneiroDiogo Menezes Ferrazani Mattos
Prof. Otto Carlos Muniz Bandeira Duarte
UERJ – Universidade do Estado do Rio de JaneiroProf. Marcelo Gonçalves Rubinstein
Projeto ReVirMarço 2012