tópicos especiais em redes de telecomunicaçõesrodrigo/docs/sdnpel/aula8.pdf · •melhora na...

41
Tópicos Especiais em Redes de Telecomunicações SDN e NFV Prof. Rodrigo de Souza Couto

Upload: nguyentuyen

Post on 14-Dec-2018

213 views

Category:

Documents


0 download

TRANSCRIPT

Tópicos Especiais em Redes de Telecomunicações

SDN e NFV

Prof. Rodrigo de Souza Couto

PARTE 2NETWORK FUNCTION

VIRTUALIZATION (NFV)

2

Bibliografia

• Esta aula é baseada nos seguintes trabalhos:

– Dissertação de Mestrado de Gabriel Fontes Carvalho de Queiroz

• http://www.pel.uerj.br/bancodissertacoes/Dissertacao_Gabriel_Queiroz.pdf

– Dissertação de Mestrado de Rodrigo Silva Vilela Eiras

• http://www.pel.uerj.br/bancodissertacoes/Dissertacao_Rodrigo_Eiras.pdf

3

Middleboxes

3

•Equipamentos dedicados, de alto desempenho•Exemplos: Tradução de Endereços de Rede (NAT), proxy etc.

•Custo, arquitetura, coexistência entre fabricantes•Gerenciamento difícil

•Interfaces de Programação de Aplicação (APIs) diferentes

•Funções de rede (NFs) atreladas ao hardware•Alta relação entre hardware e software

•Funções diferentes não podem compartilhar hardware

Redes tradicionais

4

•Dependência de middleboxes

•Infraestrutura engessada e baixa escalabilidade•Expansão, manutenção e instalação prejudicadas

•Desperdício de recursos

Como garantir flexibilidade e reduzir custos capitais e

operacionais?

Virtualização de Funções de Rede

5

•Equipamentos genéricos, desacoplamento entre hardware e

software•Flexibilidade no gerenciamento e na orquestração de NFs

•Compartilhamento de hardware por NFs diferentes

•Melhor utilização, menos desperdício de recursos

•Redução de desempenho esperada•Alternativa: algoritmos mais robustos, coleta de informações etc.

Funções de Rede em NFV

6

•Funções de rede instanciadas em máquinas virtuais (VMs)•Tanto em servidores locais quanto remotos

•Melhora na elasticidade da rede•Alocação dinâmica e ajuste de capacidade

•Criação de diferentes serviços a partir da ligação de VNFs

Encadeamento de Funções de Serviço

7

Proxy Firewall NAT

•Serviços como sequências de VNFs ordenadas•Mudar a ordem, a capacidade ou a função muda o serviço

•Posicionamento de SFCs na infraestrutura de rede

Arquitetura ETSI da NFV

9

Funções Virtuais de Rede (VNFs)

VNF VNF VNF VNF

Infraestrutura NFV (NFVI)

Recursos Físicos

ArmazenamentoRedeComputação

VNF

Camada de Virtualização

Recursos Virtuais

ArmazenamentoRedeComputação

Gerenciamento

e Orquestração

(MANO)

Infraestrutura NFV

10

Infraestrutura NFV (NFVI)

Recursos Físicos

ArmazenamentoRedeComputação

Camada de Virtualização

Recursos Virtuais

ArmazenamentoRedeComputação

Camada mais básica

da arquitetura

Recursos das VMs

e dos enlaces virtuais

Recursos dos

servidores e

enlaces físicos

Cria abstrações e

desacopla as

VNFs dos

equipamentos

físicos

Funções Virtuais de Rede

11

Funções Virtuais de Rede (VNFs)

VNF VNF VNF VNF VNF

Módulo de software que

oferece os serviços dos

middleboxes em

servidores genéricos

Pode ser composta por

vários componentes

internos e implementada

em uma ou mais VMs

Funcionam

sobre a NFVI e

estão no topo

da arquitetura

Formação dos serviços

12

VNF VNF VNF VNF VNF

•Representações em alto nível das VNFs ligadas em SFC•Depende da ordem, tipos de VNF, capacidade requisitada etc.

•Capacidade: banda, armazenamento em disco, memória etc.

•Existe SFC fora de NFV•Mais laborioso

•Software atrelado ao hardware

•Interligar os dispositivos físicos na infraestrutura

•Mais propenso a erro, gerenciamento e provisionamento difíceis

•Uma “vantagem”•Gerenciamento em um nível: serviço → middlebox

Exemplos de SFCs

13

Firewall Proxy NAT

(0,1) (1,2)

IDS Firewall NAT

(1,0) (0,2)

NAT

Balanceamentode Carga

DPI

(0,1) (1,2)

NAT Proxy Firewall

(0,1) (1,2)

(0,2)

DPI

(1,3)

Banda = 100Capacidade = 225

Firewall Proxy NAT

(0,1) (1,2)

Banda = 175Capacidade = 500

Gerenciamento e Orquestração

15

Gerenciamento

e Orquestração

(MANO)

Gestão dos recursos físicos e

de software que suportam a

virtualização da infraestrutura

Gerencia o ciclo de vida das VNFs

Destina-se a todas as tarefas de

gerenciamento da infraestrutura

Interage tanto com a NFVI

quanto com as VNFs

Componentes do MANO

16

Gerenciamento e Orquestração (MANO)

Gerenciador de Infraestrutura

Virtual (VIM)

Gerenciador de

VNFs (VNFM)

Repositório

de dados

Orquestrador NFV (NFVO)

VNFs

Recursos Virtuais

Recursos Físicos

Arquitetura da NFV

Gerenciador de Infraestrutura

Virtual (VIM)

Gerenciador de

VNFs (VNFM)

Repositório

de dados

Orquestrador NFV (NFVO)

Controle e gerenciamento

da interação entre VNFs e

recursos da NFVI

Alocação, remoção e

migração de VNFs

Coleta de informações, planejamento de capacidade e monitoramento

Virtualização

dos recursos

físicos

Cria serviços fim a fim e gerencia a topologia de VNFsDefine o acesso dos

serviços à NFVI e o

compartilhamento de

recursos entre VNFs Catálogos de

instâncias,

serviços,

recursos e

capacidades

Reúne informações

que são acessadas

por outros blocos

NFV vs SDN

Principais diferenças

•A SDN promove a flexibilidade ao desacoplar planos de dados e de controle

•A NFV desacopla função de rede do equipamento no qual é implementada

•Em SDN, a rede é programada remotamente através do controlador

•Em NFV, as VNFs e as VMs são gerenciadas remotamente

A NFV está mais associada

às funções de rede e aos

serviços e está um patamar

acima da SDN

A SDN está mais associada

ao processo de decisão e

encaminhamento de pacotes

Virtualização de Máquina

• Possibilita que diversas máquinas virtuais executem em uma mesma máquina física

• Naturalmente, reduz desempenho se comparado com utilização apenas de máquinas físicas

– Grande desafio na área de NFV

• Tipos de virtualização

– Virtualização Tradicional

• Completa

• Para-virtualização

– Virtualização Leve 18

Virtualização Tradicional

• Consiste em isolar completamente as máquinas virtuais (VMs) hospedadas em uma mesma máquina física

– Máquinas virtuais possuem sistemas operacionais independentes e que podem diferir entre si

• Utiliza um hypervisor, que traduz as instruções das VMs para a máquina física

– Camada de software entre as VMs e o hardware

19

Virtualização Completa

20

Exemplo:KVM

21

Exemplo:KVM

22

KVM trata da alocação de recursos, como memória e CPU, e Qemu trata da emulação de dispositivos, como o disco.

Exemplo:KVM

23

VMs são processos comuns no Linux

Algumas vantagens e desvantagens

• Vantagem

– Permite que sistemas operacionais das VMs sejam agnósticos em relação à virtualização

• Desvantagem

– Tradução de mensagens pelo hypervisor provoca queda de desempenho

24

Para-virtualização

• VMs estão cientes da virtualização

• Algumas instruções são executadas diretamente no hardware (ou não precisam de tradução pelo hypervisor)

25

Para-virtualização

26

Exemplo: Xen

Exemplo: Xen

Pacotes podem ser encaminhados às VMs com bridge de software, roteador de software ou por acesso direto à placa de rede

Exemplo: KVM com VirtIO

29

Algumas vantagens e desvantagens

• Vantagem

– Melhor desempenho em relação à virtualização completa

• Desvantagem

– Necessidade de modificar o sistema operacional da VM

30

Virtualização Leve

• Baseada em contêineres ao invés de VMs

• Contêineres compartilham o mesmo sistema operacional

• Não há hypervisor

– Ou seja, não há tradução de mensagens

– Isolamento é realizado por mecanismos como cgroups e namespaces

• Cgroups: Limita recursos como memória e CPU

• Namespaces: Isola parâmetros de cada contêiner, como usuários criados, Ids de processos, diretórios, etc.

– Recursos são “confinados” em um contêiner

– Grupos de contêineres podem compartilhar mesmo namespace ou mesmos recursos limitados no cgroup

31

Virtualização Leve

• Contêiner pode ser criado de acordo com as necessidades de suas aplicações

– P.ex., não é necessário alocar certas variáveis do sistema operacional para um contêiner que executará apenas uma aplicação muito específica

32

Virtualização Leve

33

Exemplo: Docker

34

Algumas informações sobre o Docker

• Tem se tornado muito popular recentemente

– Crescimento de 40% no uso entre 2015 e 2016

• É baseado no tradicional LXC (Linux Containers)

35

Algumas vantagens e desvantagens

• Vantagens

– Melhor desempenho se comparado à virtualização tradicional

– Inicialização mais rápida

– Capacidade de criar uma grande quantidade de contêineres dentro de uma mesma máquina física

• Desvantagens

– Menor isolamento se comparado à virtualização tradicional

– Contêineres possuem o mesmo sistema operacional

36

Comparativo entre VMs e contêineres

37

Alguns resultados comparativos entre KVM e Docker

• Dissertação de Mestrado de Rodrigo Eiras

– Veja mais detalhes e resultados em http://www.pel.uerj.br/bancodissertacoes/Dissertacao_Rodrigo_Eiras.pdf

• Utilização de um Proxy HTTP como VNF

– Comparação entre KVM e Docker

• Resultado preliminar – Tempo médio de instanciação de uma VNF

– Docker: 4 ± 0,5 segundos

– KVM: 52 ± 12,5 segundos38

Cenário de Testes

39

Resultado

40

• Tempo médio de processamento de uma requisição

Conclusão dos Resultados

• No cenário utilizado, Docker apresentou um desempenho superior ao KVM, próximo do Linux Nativo

• Apesar do melhor desempenho do Docker, aplicações que necessitam de isolamento podem ser prejudicadas

– Para-virtualização pode ser uma opção

41