provinet : uma plataforma para gerenciamento de redes virtuais programáveis

Post on 08-Jul-2015

320 Views

Category:

Technology

4 Downloads

Preview:

Click to see full reader

DESCRIPTION

Presented at SBRC 2013 in Brasília-DF, Brazil

TRANSCRIPT

Wanderson  Paim  de  Jesus  Ricardo  L.  S.,  Oscar  M.  C.  R.  e  Lisandro  Z.  G.  

ProViNet:    Uma  Plataforma  para  Gerenciamento    de  Redes  Virtuais  Programáveis  

Computer  Networks  UFRGS  

SBRC  –  Maio  de  2013  –  Brasília/DF  

SUMÁRIO  

1.  MoOvação  2.  Problema  3.  Solução  4.  ProtóOpo  5.  Avaliação  6.  Considerações  finais  

ProViNet:    Uma  Plataforma  para  Gerenciamento    de  Redes  Virtuais  Programáveis  

1 ProViNet:    Uma  Plataforma  para  Gerenciamento    de  Redes  Virtuais  Programáveis  

•  Computadores pessoais

•  Dispositivos móveis

•  Servidores

•  Coisas (IoT)

Borda das Redes de Computadores

MOTIVAÇÃO

INOVAÇÃO

1 ProViNet:    Uma  Plataforma  para  Gerenciamento    de  Redes  Virtuais  Programáveis  

Núcleo das Redes de Computadores

•  Routers

•  Switches

•  APs

MOTIVAÇÃO

INOVAÇÃO

1 ProViNet:    Uma  Plataforma  para  Gerenciamento    de  Redes  Virtuais  Programáveis  

Aplicações da Borda das Redes de Computadores

•  Fácil acesso •  Grande número de desenvolvedores •  Rápida implantação e disponibilização

Mais  inovação  

MOTIVAÇÃO

INOVAÇÃO

1 ProViNet:    Uma  Plataforma  para  Gerenciamento    de  Redes  Virtuais  Programáveis  

MOTIVAÇÃO

INOVAÇÃO

•  IPv6 •  BGP •  IPSec

•  MPLS •  Multicast •  QoS

Aplicações do Núcleo das Redes de Computadores

•  Difícil acesso •  Poucos desenvolvedores •  Implantação e disponibilização lentas

Menos  inovação  

1 ProViNet:    Uma  Plataforma  para  Gerenciamento    de  Redes  Virtuais  Programáveis  

MOTIVAÇÃO

BARREIRAS

•  Grandes  modificações  para  adoção  de  novas  soluções    

•  LenOdão  no  processo  de  padronização  

•  Dependência  no  interesse  comercial  dos  fornecedores  de  equipamentos  de  rede  

•  Hardware  e  so_ware  proprietários  no  núcleo  das  redes  

1 ProViNet:    Uma  Plataforma  para  Gerenciamento    de  Redes  Virtuais  Programáveis  

MOTIVAÇÃO

VISÃO HISTÓRICA

•  Redes  AOvas  (PSOUNIS,1999)  

•  Open  Signaling  (CAMPBELL  et  al.,  1999)  

•  Node  OperaOng  Systems  

•  Click  Modular  Router  (MORRIS  et  al.,  1999)  

•  Cisco  AON  

•  Juniper  JunOS  SDK  

•  OpenFlow  (MCKEOWN  et  al.,  2008)  

•  So_ware-­‐Defined  Networking    (MCKEOWN,  2009)  

SUMÁRIO  

1.  MoOvação  2.  Problema  3.  Solução  4.  ProtóOpo  5.  Avaliação  6.  Considerações  finais  

ProViNet:    Uma  Plataforma  para  Gerenciamento    de  Redes  Virtuais  Programáveis  

2 ProViNet:    Uma  Plataforma  para  Gerenciamento    de  Redes  Virtuais  Programáveis  

PROBLEMA

DESCRIÇÃO

Sistema  Operacional  de  Rede  

vSwitch  

pSwitch  

App   App   App              Acesso  

Usuários  Finais  X  

2 ProViNet:    Uma  Plataforma  para  Gerenciamento    de  Redes  Virtuais  Programáveis  

PROBLEMA

PROPOSTAS

•  ProtoGENI  (FLACK)  

2 ProViNet:    Uma  Plataforma  para  Gerenciamento    de  Redes  Virtuais  Programáveis  

PROBLEMA

PROPOSTAS

•  OFELIA  Control  Framework  

2 ProViNet:    Uma  Plataforma  para  Gerenciamento    de  Redes  Virtuais  Programáveis  

PROBLEMA

PROPOSTAS

•  XenServer  Distributed  Virtual  Switch  Controller  

SUMÁRIO  

1.  MoOvação  2.  Problema  3.  Solução  4.  ProtóOpo  5.  Avaliação  6.  Considerações  finais  

ProViNet:    Uma  Plataforma  para  Gerenciamento    de  Redes  Virtuais  Programáveis  

3 ProViNet:    Uma  Plataforma  para  Gerenciamento    de  Redes  Virtuais  Programáveis  

SOLUÇÃO

CONCEITUAL

Virtualização  de  Redes  

Programabilidade  de  Redes  

Computação  em  Nuvem  

Redes  Definidas  por  So_ware  

3 ProViNet:    Uma  Plataforma  para  Gerenciamento    de  Redes  Virtuais  Programáveis  

SOLUÇÃO

CONCEITUAL

Pool$de$Execução$

Pool$de$Controle$

Slices$

1$

2$ SBAPI

NBAPI

Usuário Final

Sistema  Operacional  de  Rede  

vSwitch  

pSwitch  

App   App   App  

3 ProViNet:    Uma  Plataforma  para  Gerenciamento    de  Redes  Virtuais  Programáveis  

SOLUÇÃO

ARQUITETURA

Pool$de$Execução$

Pool$de$Controle$

Slices$

1$

2$ SBAPI

NBAPI

Usuário Final

Slices  da  RVP  

Pool  de  Controle  

Pool  de  Execução  

Controle  de  Usuários  Usuário  

Controle  de  AplicaOvos   Servidor  

DNS   Provedor  de  Infraestrutura  

Virtual  

Web  GUI  

Controle  de  Slices  e  Referências  

VXDL  

a  

b  

c  Módulo  de  

Administração  Administrador  

d  

3 ProViNet:    Uma  Plataforma  para  Gerenciamento    de  Redes  Virtuais  Programáveis  

SOLUÇÃO

Provimento  de  Rede  Virtual  

Slices  da  RVP  

Pool  de  Controle  

Pool  de  Execução  

Controle  de  Usuários  Usuário  

Controle  de  AplicaOvos   Servidor  

DNS   Provedor  de  Infraestrutura  

Virtual  

Web  GUI  

Controle  de  Slices  e  Referências  

VXDL  

a  

b  

c  Módulo  de  

Administração  Administrador  

d  

3 ProViNet:    Uma  Plataforma  para  Gerenciamento    de  Redes  Virtuais  Programáveis  

SOLUÇÃO

PROVIMENTO

Pool$de$Execução$

Pool$de$Controle$

Slices$

1$

2$ SBAPI

NBAPI

Usuário Final

Slices  da  RVP  

Pool  de  Execução  

Controle  de  Usuários  Usuário  

Controle  de  AplicaOvos   Servidor  

DNS   Provedor  de  Infraestrutura  

Virtual  

Web  GUI  

Controle  de  Slices  e  Referências  

VXDL  

a  

b  

c  Módulo  de  

Administração  Administrador  

d  

3 ProViNet:    Uma  Plataforma  para  Gerenciamento    de  Redes  Virtuais  Programáveis  

SOLUÇÃO

PROVIMENTO

Pool$de$Execução$

Pool$de$Controle$

Slices$

1$

2$ SBAPI

NBAPI

Usuário Final

Pool  de  Controle  

Slices  da  RVP  

Pool  de  Execução  

Controle  de  Usuários  Usuário  

Controle  de  AplicaOvos   Servidor  

DNS   Provedor  de  Infraestrutura  

Virtual  

Web  GUI  

Controle  de  Slices  e  Referências  

VXDL  

a  

b  

c  Módulo  de  

Administração  Administrador  

d  

3 ProViNet:    Uma  Plataforma  para  Gerenciamento    de  Redes  Virtuais  Programáveis  

SOLUÇÃO

Pool$de$Execução$

Pool$de$Controle$

Slices$

1$

2$ SBAPI

NBAPI

Usuário Final

Pool  de  Controle  

PROVIMENTO

Slices  da  RVP  

Pool  de  Execução  

Controle  de  Usuários  Usuário  

Controle  de  AplicaOvos   Servidor  

DNS   Provedor  de  Infraestrutura  

Virtual  

Web  GUI  

Controle  de  Slices  e  Referências  

VXDL  

a  

b  

c  Módulo  de  

Administração  Administrador  

d  

3 ProViNet:    Uma  Plataforma  para  Gerenciamento    de  Redes  Virtuais  Programáveis  

SOLUÇÃO

Pool$de$Execução$

Pool$de$Controle$

Slices$

1$

2$ SBAPI

NBAPI

Usuário Final

Pool  de  Controle  

PROVIMENTO

Slices  da  RVP  

Pool  de  Execução  

Controle  de  Usuários  Usuário  

Controle  de  AplicaOvos   Servidor  

DNS   Provedor  de  Infraestrutura  

Virtual  

Web  GUI  

Controle  de  Slices  e  Referências  

VXDL  

a  

b  

c  Módulo  de  

Administração  Administrador  

d  

3 ProViNet:    Uma  Plataforma  para  Gerenciamento    de  Redes  Virtuais  Programáveis  

SOLUÇÃO

Pool$de$Execução$

Pool$de$Controle$

Slices$

1$

2$ SBAPI

NBAPI

Usuário Final

Pool  de  Controle  

PROVIMENTO

Slices  da  RVP  

Pool  de  Execução  

Controle  de  Usuários  Usuário  

Controle  de  AplicaOvos   Servidor  

DNS   Provedor  de  Infraestrutura  

Virtual  

Web  GUI  

Controle  de  Slices  e  Referências  

VXDL  

a  

b  

c  Módulo  de  

Administração  Administrador  

d  

3 ProViNet:    Uma  Plataforma  para  Gerenciamento    de  Redes  Virtuais  Programáveis  

SOLUÇÃO

Pool$de$Execução$

Pool$de$Controle$

Slices$

1$

2$ SBAPI

NBAPI

Usuário Final

Pool  de  Controle  

PROVIMENTO

hop://usuario1.provinet.local  

3 ProViNet:    Uma  Plataforma  para  Gerenciamento    de  Redes  Virtuais  Programáveis  

SOLUÇÃO

Programação  de  Rede  Virtual  

Slices  da  RVP  

Pool  de  Execução  

Controle  de  Usuários  Usuário  

Controle  de  AplicaOvos   Servidor  

DNS   Provedor  de  Infraestrutura  

Virtual  

Web  GUI  

Controle  de  Slices  e  Referências  

VXDL  

a  

b  

c  Módulo  de  

Administração  Administrador  

d  

3 ProViNet:    Uma  Plataforma  para  Gerenciamento    de  Redes  Virtuais  Programáveis  

SOLUÇÃO

Pool$de$Execução$

Pool$de$Controle$

Slices$

1$

2$ SBAPI

NBAPI

Usuário Final

Pool  de  Controle  

PROGRAMAÇÂO

Slices  da  RVP  

Pool  de  Execução  

Controle  de  Usuários  Usuário  

Controle  de  AplicaOvos   Servidor  

DNS   Provedor  de  Infraestrutura  

Virtual  

Web  GUI  

Controle  de  Slices  e  Referências  

VXDL  

a  

b  

c  Módulo  de  

Administração  Administrador  

d  

3 ProViNet:    Uma  Plataforma  para  Gerenciamento    de  Redes  Virtuais  Programáveis  

SOLUÇÃO

Pool$de$Execução$

Pool$de$Controle$

Slices$

1$

2$ SBAPI

NBAPI

Usuário Final

Pool  de  Controle  

PROGRAMAÇÂO

Slices  da  RVP  

Pool  de  Execução  

Controle  de  Usuários  Usuário  

Controle  de  AplicaOvos   Servidor  

DNS   Provedor  de  Infraestrutura  

Virtual  

Web  GUI  

Controle  de  Slices  e  Referências  

VXDL  

a  

b  

c  Módulo  de  

Administração  Administrador  

d  

3 ProViNet:    Uma  Plataforma  para  Gerenciamento    de  Redes  Virtuais  Programáveis  

SOLUÇÃO

Pool$de$Execução$

Pool$de$Controle$

Slices$

1$

2$ SBAPI

NBAPI

Usuário Final

Pool  de  Controle  

PROGRAMAÇÂO

3 ProViNet:    Uma  Plataforma  para  Gerenciamento    de  Redes  Virtuais  Programáveis  

SOLUÇÃO

ABORDAGEM

Pool$de$Controle$

...

Formato de chamada REST (http://<referenciacontrolador>/<serviço>)

Pool$de$Execução$

...

Hypervisor Hypervisor

Exemplo: http://user1.provinet.local/getTopology

Exemplo: http://user2.provinet.local/sw/1/setFlow

user1.provinet.local : 192.168.1.20, 192.168.1.21 <nome> : <IP-do-controlador-principal>, <secundário>,...

user2.provinet.local : 192.168.1.30, 192.168.1.31

...

...

...

Máquinas virtuais rodando o(s) controlador(es)

.20

Máquina virtual rodando o aplicativo do usuário

Slice do user1

.21

.30 .31

Servidor de DNS

SBAPI

NBAPI Slice do user2

3 ProViNet:    Uma  Plataforma  para  Gerenciamento    de  Redes  Virtuais  Programáveis  

SOLUÇÃO

VANTAGENS

Pool$de$Controle$

...

Formato de chamada REST (http://<referenciacontrolador>/<serviço>)

Pool$de$Execução$

...

Hypervisor Hypervisor

Exemplo: http://user1.provinet.local/getTopology

Exemplo: http://user2.provinet.local/sw/1/setFlow

user1.provinet.local : 192.168.1.20, 192.168.1.21 <nome> : <IP-do-controlador-principal>, <secundário>,...

user2.provinet.local : 192.168.1.30, 192.168.1.31

...

...

...

Máquinas virtuais rodando o(s) controlador(es)

.20

Máquina virtual rodando o aplicativo do usuário

Slice do user1

.21

.30 .31

Servidor de DNS

SBAPI

NBAPI Slice do user2

Isolamento  

3 ProViNet:    Uma  Plataforma  para  Gerenciamento    de  Redes  Virtuais  Programáveis  

SOLUÇÃO

VANTAGENS

Pool$de$Controle$

...

Formato de chamada REST (http://<referenciacontrolador>/<serviço>)

Pool$de$Execução$

...

Hypervisor Hypervisor

Exemplo: http://user1.provinet.local/getTopology

Exemplo: http://user2.provinet.local/sw/1/setFlow

user1.provinet.local : 192.168.1.20, 192.168.1.21 <nome> : <IP-do-controlador-principal>, <secundário>,...

user2.provinet.local : 192.168.1.30, 192.168.1.31

...

...

...

Máquinas virtuais rodando o(s) controlador(es)

.20

Máquina virtual rodando o aplicativo do usuário

Slice do user1

.21

.30 .31

Servidor de DNS

SBAPI

NBAPI Slice do user2

Balanceamento  de  Carga  

3 ProViNet:    Uma  Plataforma  para  Gerenciamento    de  Redes  Virtuais  Programáveis  

SOLUÇÃO

VANTAGENS

Pool$de$Controle$

...

Formato de chamada REST (http://<referenciacontrolador>/<serviço>)

Pool$de$Execução$

...

Hypervisor Hypervisor

Exemplo: http://user1.provinet.local/getTopology

Exemplo: http://user2.provinet.local/sw/1/setFlow

user1.provinet.local : 192.168.1.20, 192.168.1.21 <nome> : <IP-do-controlador-principal>, <secundário>,...

user2.provinet.local : 192.168.1.30, 192.168.1.31

...

...

...

Máquinas virtuais rodando o(s) controlador(es)

.20

Máquina virtual rodando o aplicativo do usuário

Slice do user1

.21

.30 .31

Servidor de DNS

SBAPI

NBAPI Slice do user2

Tolerância  a  Falha  

SUMÁRIO  

1.  MoOvação  2.  Problema  3.  Solução  4.  ProtóOpo  5.  Avaliação  6.  Considerações  finais  

ProViNet:    Uma  Plataforma  para  Gerenciamento    de  Redes  Virtuais  Programáveis  

4 ProViNet:    Uma  Plataforma  para  Gerenciamento    de  Redes  Virtuais  Programáveis  

PROTÓTIPO

TECNOLOGIAS

Slices  da  RVP  

Pool  de  Controle  

Pool  de  Execução  

Controle  de  Usuários  Usuário  

Controle  de  AplicaOvos   Servidor  

DNS   HyFS  

Web  GUI  

Controle  de  Slices  e  Referências  

VXDL  

a  

b  

c  Módulo  de  

Administração  Administrador  

d  

Bootstrap  

BIND  

SUMÁRIO  

1.  MoOvação  2.  Problema  3.  Solução  4.  ProtóOpo  5.  Avaliação  6.  Considerações  finais  

ProViNet:    Uma  Plataforma  para  Gerenciamento    de  Redes  Virtuais  Programáveis  

ProViNet:    Uma  Plataforma  para  Gerenciamento    de  Redes  Virtuais  Programáveis  

AVALIAÇÂO

CASO de ESTUDO 5 Parte  1  –  Provimento  

 

 

VXDL  

Controladores   2  Topologia  da  rede  virtual   7  switches  e  4  hosts  

ProViNet:    Uma  Plataforma  para  Gerenciamento    de  Redes  Virtuais  Programáveis  

AVALIAÇÂO

CRIAÇÃO de SLICES

Instanciação  de  2  controladores   12,82s  

Provimento  da  Infra  (PIV)   57,81s  

Configuração  dos  Subdomínios   0,04s  

Total   70,67s  

5

ProViNet:    Uma  Plataforma  para  Gerenciamento    de  Redes  Virtuais  Programáveis  

AVALIAÇÂO

CASO de ESTUDO 5 Parte  2  –  Programação  

•  Chamada  entre  o  Pool  de  Execução  e  o  de  Controle  

•  h8p://provinet.local/wm/core/controller/switches/json    

Controladores   [1  –  5]  Topologia  da  rede  virtual   7  switches  e  4  hosts  

5 ProViNet:    Uma  Plataforma  para  Gerenciamento    de  Redes  Virtuais  Programáveis  

AVALIAÇÂO

Plano de Controle

20 40 60 80 100

1

2

3

4

5

6

7

8

Número de requisições

Tem

po (s

egun

dos)

12345

Número de Controladores

SUMÁRIO  

1.  MoOvação  2.  Problema  3.  Solução  4.  ProtóOpo  5.  Avaliação  6.  Considerações  finais  

ProViNet:    Uma  Plataforma  para  Gerenciamento    de  Redes  Virtuais  Programáveis  

6 ProViNet:    Uma  Plataforma  para  Gerenciamento    de  Redes  Virtuais  Programáveis  

CONSIDERAÇÕES FINAIS

VISÃO GERAL

•  Problema:  Falta  de  acesso  a  usuários  finais  em  redes  virtuais  

•  Hipótese:  Aumentando  o  número  de  usuários  aptos  a  propor  e  implantar  soluções  de  rede,  maior  será  a  quanOdade  de  soluções  inovadoras  

•  Solução:  Plataforma  de  gerenciamento  de  RVP  

•  Contribuições:    

•  Abordagem  de  gerenciamento  do  Plano  de  Controle  

•  Arquitetura  para  coordenar  a  programação  de  RVP  

6 ProViNet:    Uma  Plataforma  para  Gerenciamento    de  Redes  Virtuais  Programáveis  

CONSIDERAÇÕES FINAIS

TRABALHOS FUTUROS

•  Aprimorar  metodologia  de  programabilidade  

•  Explorar  a  alta  disponibilidade  no  plano  de  controle  

•  Executar  avaliações  qualitaOvas  

•  Padronização  de  chamadas  entre  ProViNet  e  PIV  

•  Promover  o  comparOlhamento  de  soluções  

6 ProViNet:    Uma  Plataforma  para  Gerenciamento    de  Redes  Virtuais  Programáveis  

CONSIDERAÇÕES FINAIS

TRABALHOS FUTUROS

•  Prateleiras  de  serviços  de  rede  virtual  

IPv8      

Usuários  Finais  

6 ProViNet:    Uma  Plataforma  para  Gerenciamento    de  Redes  Virtuais  Programáveis  

CONSIDERAÇÕES FINAIS

FOLLOWING ProViNet

•  Wanderson  P.  J.,  Juliano  A.  W.,  Lisandro  Z.  G.  (2013).  ProViNet  –  An  Open  Plauorm  for  Programmable  Virtual  Network  Management.  Em  Proceedings  of  37th  IEEE  Computer  SoGware  and  ApplicaIons  Conference  (COMPSAC  2013)  

•  hop://github.com/computer-­‐networks-­‐ufrgs/provinet  

•  hop://www.futureinternet.br  

•  YouTube:  “ProViNet  –  SDN  Management  Plauorm”  

 

ProViNet:    Uma  Plataforma  para  Gerenciamento    de  Redes  Virtuais  Programáveis  

ProViNet:    Uma  Plataforma  para  Gerenciamento    de  Redes  Virtuais  Programáveis  

wanderson.paim@inf.ufrgs.br  

N ProViNet:    Uma  Plataforma  para  Gerenciamento    de  Redes  Virtuais  Programáveis  

BACKUP

N ProViNet:    Uma  Plataforma  para  Gerenciamento    de  Redes  Virtuais  Programáveis  

BACKUP

PROGRAMA de REDE

N ProViNet:    Uma  Plataforma  para  Gerenciamento    de  Redes  Virtuais  Programáveis  

BACKUP

VXDL

N ProViNet:    Uma  Plataforma  para  Gerenciamento    de  Redes  Virtuais  Programáveis  

BACKUP

VXDL

N ProViNet:    Uma  Plataforma  para  Gerenciamento    de  Redes  Virtuais  Programáveis  

BACKUP

VXDL

top related